<<Prev
Next>>
Scroll to Bottom
Stuff goes here
L1[00:00:08] <Delenas> It wasn't.
L2[00:00:16] <mezz> how did it work?
L3[00:00:27] <Delenas> I had no way to get
an instance of the providers on the client.
L4[00:00:38] <Delenas> So, it..
Didn't.
L6[00:00:45] <mezz> so it was only working
SSP?
L7[00:00:51] <Delenas> Somehow ot looked
pike it worked, but it didn't.
L8[00:01:49] <mezz> I don't really like
Object... extras
L9[00:02:00] <mezz> seems wrong for
java
L10[00:02:08] <Delenas> Anyway. The gui
provider base is nicer anyway now.
L11[00:02:17] <mezz> that's good
L13[00:03:30] <Delenas> It has an issue
where if you pass extra data in serialize it may be harder for
other mods to work, but I haven't tested super deeply.
L14[00:04:29] <Delenas> If all you use this
for is internal, it's fantastic. If all you do is extend the impls
provided to add guis, it works fine.
L15[00:05:03] <mezz> I think if it is
becoming specialized and internal it should move away from
capabilities
L16[00:05:56] <Delenas> But other mods may
have an issue where they pass params wrong and they don't get
what's expected. (I'm talking between mods here) - But if they just
grab a cap, the provider should be returning things correctly
anyway.
L17[00:06:02] ⇨
Joins: Hunterz
(~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
L18[00:06:32] ***
TTFTCUTS is now known as TTFT|Away
L19[00:07:37] <Delenas> Example scenario
from my mod being a GuiProvider on a tile needing the hit area of
the block. That's passed as a param in extras.
L20[00:08:04] <mezz> I see how it is used
but it makes the capability not that useful
L21[00:08:18] <Delenas> Other mods
accessing the gui may not know to pass that side and vector.
L22[00:08:27] <mezz> the use-case for being
being a capability wasn't that strong in the first place
L23[00:08:51] <mezz> either it has to be
clearly used as a capability or it shouldn't be one imo
L24[00:09:00] <Delenas> No, the usecase
here is internal, to easily supply additional data to the
packet.
L25[00:09:28] <mezz> that's not what I
see
L27[00:10:15] <mezz> nobody else will know
to open it with a hand param
L28[00:10:22] <mezz> it is internal
L29[00:10:33] <mezz> there is no point in
it being a capability
L30[00:11:28] <mezz> if you have to
special-case for each one then it is not a universal
interface
L31[00:11:45] <Delenas> Then I'll remove
the capability stuff.
L32[00:12:01] <mezz> I think that makes the
most sense yeah
L33[00:12:03] <Delenas> The internal packet
handling works pretty nicely. The caps were a bonus.
L34[00:12:41] <mezz> I think it was a solid
attempt but I think you found that in practice it's not as useful
as imagined
L35[00:13:08] <Delenas> I tried
*shrug*
L36[00:13:35] <Delenas> At least we can
point to this and have an easy time saying "it doesn't
work"
L37[00:13:56] <mezz> yeah
L38[00:14:19] <Delenas> However. I do now
want to change EnumFacing in ICapProvider to RayTraceResult
L39[00:14:53] <Delenas> I feel it'd work
better for multiparts, tiles, and entities.
L40[00:15:09] <mezz> it would but it would
be more complicated for blocks that don't need it (most)
L41[00:15:12] <panda_2134> hi
everyone
L42[00:15:24] <Delenas> Truuue.
L43[00:15:30] <mezz> is there a way to make
the serialization more customizable, like a serialization plugin
object?
L44[00:15:46] <panda_2134> i'm working on a
ic2 energy generator,but it is not working
L45[00:15:50] ⇦
Quits: Brokkoli (~Brokkoli@p5B23C8B2.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))
L46[00:16:00] <Delenas> Well,
probably.
L47[00:16:06] <mezz> panda_2134, see
Forestry's TileEuGenerator
L48[00:16:15] <panda_2134> well...
L49[00:16:29] <Delenas> I could enforce a
size and structure by adding another method.
L50[00:16:53] <Delenas> To say it needs,
say, a hand and a side.
L51[00:16:56] <panda_2134> when i placed it
,it was working,but after i entered another dimension and went
back,it is broken
L52[00:17:21] <mezz> Delenas, what about
something like Minecraft's DataSerializer system?
L53[00:17:28] <panda_2134> then i reload
the world,and it works again
L54[00:17:38] <Delenas>
DataSerializer?
L55[00:17:44] <Delenas> When did that
become a thjng
L57[00:17:51] <mezz> Delenas, very
recently
L58[00:18:11] <mezz> panda_2134, go look at
my working implementation and compare
L59[00:18:19] <Delenas> Fff. It's 1am, I
can't be researching at this hour!
L60[00:18:30] <mezz> well, there is time
later heh
L61[00:18:44] <Delenas> But ideaaaas
L62[00:19:02] <mezz> basically you register
small DataSerializer objects that only read and write data to a
buffer
L63[00:19:14] <mezz> and build around
those
L64[00:19:25] <mezz> dunno, just throwing
ideas around
L65[00:20:04] *
MoxieGrrl throws Idea at mezz
L66[00:20:08] <Delenas> Also
L67[00:20:17] <Delenas> Am I even doing the
registry right?
L68[00:21:53] <mezz> well, does it work
with separate client and server?
L69[00:22:26] <Delenas> Pretty sure,
yeah.
L70[00:22:35] <mezz> yes?
L71[00:22:39] ⇦
Quits: electrolitic
(~electroli@104-184-56-125.lightspeed.cicril.sbcglobal.net) (Read
error: Connection reset by peer)
L72[00:22:59] <Tazz> woah why is intellij
not displaying .obj files
L73[00:23:05] <mezz> I mean it should break
very swiftly if it's incorrect
L74[00:24:06] <killjoy> !gm 188364
L75[00:26:33] <panda_2134>
ok...thanks
L77[00:27:43] <killjoy> What's the policy
on license boilerplate?
L78[00:28:10] <mezz> in what context?
L79[00:28:15] <killjoy> new files in a
PR
L80[00:30:31] <mezz> it's often missing and
overlooked, not sure
L81[00:30:50] <mezz> probably good to
include it
L82[00:30:51] <killjoy> then I won't
mention anything
L84[00:31:07] <killjoy> I'm looking at
#3076
L85[00:31:42] <mezz> yeah don't bother.
everyone's signing a CLA at this point and it can be auto-applied
if it's necessary
L86[00:32:51] <mezz> they do need to fix
their git merge though, it's including unrelated commits
L87[00:33:25] <killjoy> gotta get some
gitfu in there
L88[00:34:13] <mezz> git rebase -i
origin/1.10.x
L89[00:34:24] <killjoy> I am aware
L90[00:34:24] <mezz> and delete the commit
lines that aren't yours
L92[00:34:47] <killjoy> it's not mine, so I
won't mess with it.
L93[00:37:00] <killjoy> I'm looking at it
because I need to keep an eye on that class in order to maintain
full compatibility
L94[00:37:13] <killjoy> the
layerarmorbase
L95[00:37:30] <mezz> full compatibility
with what?
L96[00:38:35] <killjoy> I rewrote the armor
layer for some reason
L97[00:39:10] <mezz> asm?
L98[00:39:15] <killjoy> no, just
reimplemented
L100[00:40:30] <killjoy> If I remember, it
is because I change the textures of the armor or something.
L101[00:40:56]
⇨ Joins: Cooler (~CoolerExt@117.204.117.233)
L102[00:41:00] ⇦
Quits: Cooler (~CoolerExt@117.204.117.233) (Remote host closed the
connection)
L104[00:42:33] <mezz> lol for some reason
I didn't expect to be linked to a my little pony mod
L105[00:43:20]
⇨ Joins: killjoy1
(~killjoy@cpe-2606-A000-1118-C151-D1E8-D3A6-2454-AD36.dyn6.twc.com)
L106[00:44:32]
⇨ Joins: Cooler (~CoolerExt@117.204.117.233)
L107[00:45:39] ⇦
Quits: killjoy
(~killjoy@cpe-2606-A000-1118-C151-FC7A-3ED0-8416-B12B.dyn6.twc.com)
(Ping timeout: 192 seconds)
L108[00:51:40] ⇦
Quits: Cooler (~CoolerExt@117.204.117.233) (Ping timeout: 190
seconds)
L109[00:51:46]
⇨ Joins: CoolerExtreme
(~CoolerExt@117.204.117.233)
L110[00:53:30]
⇨ Joins: RANKSHANK
(~Michael@ppp121-44-11-113.lns20.syd4.internode.on.net)
L111[00:54:58] ⇦
Quits: sinkillerj (~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net)
(Quit: またね)
L112[00:55:23] ***
mrkirby153 is now known as kirby|gone
L113[00:56:03] ⇦
Quits: blood_ (unknown@ool-4574115b.dyn.optonline.net)
()
L114[00:57:35] ⇦
Quits: killjoy1
(~killjoy@cpe-2606-A000-1118-C151-D1E8-D3A6-2454-AD36.dyn6.twc.com)
(Quit: Leaving)
L115[00:59:22]
⇨ Joins: Jezza
(~Jezza@bps-gw.hrz.tu-chemnitz.de)
L116[01:01:13]
⇨ Joins: Cooler (~CoolerExt@117.204.117.233)
L117[01:02:05] ⇦
Quits: CoolerExtreme (~CoolerExt@117.204.117.233) (Ping timeout:
186 seconds)
L118[01:15:56]
⇨ Joins: KGS
(~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L119[01:27:28]
⇨ Joins: abab9579 (~abab9579@112.166.128.227)
L120[01:29:00] ⇦
Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 190
seconds)
L121[01:31:26]
⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L122[01:40:39] ⇦
Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping timeout:
198 seconds)
L123[01:44:28] ⇦
Quits: Cooler (~CoolerExt@117.204.117.233) (Quit:
Leaving)
L124[01:44:35] ⇦
Quits: Drullkus (~Dru11kus@2601:646:8301:ead3:8c3c:cba0:bb23:fa2d)
()
L125[01:46:55] <FusionLord> what is the
line for a block default transform?
L126[01:48:26] <FusionLord>
"transform": "forge:default-block" ?
L127[01:48:38] <TehNut> yes
L128[01:49:16] <Wuppy> holy crap someone
is organizing a pokemon go pub crawl next weeek x D
L130[01:51:00] ***
kroeser|away is now known as kroeser
L131[01:51:17] ***
minecreatr is now known as Mine|dreamland
L132[01:51:28] <Wuppy> I can't be there
though, going on a vacation :D
L133[01:51:46]
⇨ Joins: Cooler (~CoolerExt@117.204.117.233)
L134[01:52:43] ***
Darkhax is now known as Darkhax_AFK
L136[01:59:34] <MCPBot_Reborn> [TEST CSV]
Pushing snapshot_20160711 mappings to Forge Maven.
L137[01:59:38] <MCPBot_Reborn> [TEST CSV]
Maven upload successful for mcp_snapshot-20160711-1.10.2.zip
(mappings = "snapshot_20160711" in build.gradle).
L138[01:59:48] <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/
L139[02:04:32] <sham1> >Kotaku
L140[02:04:42] <mezz>
>$current_year
L141[02:05:02] <sham1> Kotaku is worse
than pointing out the current year
L142[02:05:34] <mezz> I'm just adding onto
yours, Kotaku in current year is worst of all
L143[02:05:38] ⇦
Quits: Cooler (~CoolerExt@117.204.117.233) (Quit:
Leaving)
L144[02:05:55]
⇨ Joins: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L145[02:06:48] <Wuppy> I just randomly
found it on Facebook :P
L146[02:07:41] ***
kroeser is now known as kroeser|away
L147[02:07:45] <mezz> probably nothing
wrong with the article really, just don't want to support kotaku at
all
L148[02:12:59] ***
AEnterpriseAFK is now known as AEnterprise
L149[02:24:07]
⇨ Joins: Meow-J
(uid69628@id-69628.highgate.irccloud.com)
L150[02:39:12] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186
seconds)
L151[02:42:42] ***
Darkhax_AFK is now known as Darkhax
L152[02:43:17] ⇦
Quits: rebecca_ (~rebecca@209.95.50.47) (Ping timeout: 186
seconds)
L153[02:45:49] <LexManos> !gm
func_110986_a
L154[02:46:02] <LexManos> !gm 110987
L155[02:46:39] <LexManos> !gm
World.getBlockState
L156[02:49:35] <RANKSHANK> hey lex what
are the odds of forge including batched GuiContainer ItemStack
drawing if the patch was written?
L157[02:52:01] <tterrag> batching item
renders is not simple
L158[02:52:03] <tterrag> just ask
mezz
L159[02:54:09] <RANKSHANK> yeah the
GuiContainer is noodlesoup as is :P but the payoff seems like it'd
be pretty decent
L160[02:54:48] <sham1> What would the
patch be about
L161[02:55:47] <sham1> What would be
patched
L162[02:56:53] <RANKSHANK> creating an
alternate draw method that's run that doesn't flip the state twice
for each item with an effect. If I were to write it it'd be patched
like my ItemOverlay PR where it'd be shipped off to a forge
contained method instead of running the vanilla one
L163[02:57:01]
⇨ Joins: Noppes
(~Noppes@ip56530f2e.direct-adsl.nl)
L164[02:58:37] ***
kroeser|away is now known as kroeser
L165[02:59:44] <tterrag> I'm saying it's
all but impossible
L166[03:00:01] <tterrag> it's complicated
enough without the tons of mods that have hacks around the model
system and will break your batching entirely
L167[03:00:42] <RANKSHANK> nothing is
impossible with the power of math ;D
L168[03:01:01] <RANKSHANK> but that's
true.... I wasn't aware that there were many of these edge cases
:P
L169[03:01:21] <illy> have you tried using
wombo?
L170[03:01:50] <sham1> what is that
L171[03:05:19] <sham1> all I gind is wombo
combo
L172[03:05:53] <tterrag> if forge actually
had a proper GL item render, you could except those from the
batching and it would work fine
L173[03:06:15] <illy> sham1: nothing just
a bad spongebob jock
L174[03:06:19] <illy> joke*
L175[03:07:14] <sham1> but why
L176[03:08:06] ***
kroeser is now known as kroeser|away
L177[03:08:20] <illy> slightly drunk
L179[03:08:39] <RANKSHANK> yeah true but
if it had GL access for items then every man and his dog would use
it and batching wouldn't be feasible... I wonder how many of those
can be resolved with an invent instead... do you know of any git
projects I can read through with these hacks?
L180[03:08:49] <tterrag> no that's not
true
L181[03:09:03] <tterrag> I have a few very
specific use cases for raw GL
L182[03:09:07] <tterrag> everything else
I'd use models
L183[03:09:18] <tterrag> and since when
does forge care what dumb people do with it?
L184[03:10:06] <tterrag> that's never been
a valid argument in my mind. people will always misuse things
L185[03:10:20] <tterrag> adding pointless
limitations just makes it worse for the people who'd use it
right
L186[03:11:49] <RANKSHANK> definitely
true. but as far as performance goes the current system is holding
up alright
L187[03:12:29] <tterrag> it is. and I'm
not saying it should go away
L188[03:12:36] <tterrag> we have TESRs, do
you see every single block using those?
L189[03:12:49] *
Tazz is starting to contemplate making Eschelle support like
precompiled binaries :/
L190[03:13:30] <RANKSHANK> true but that
was also the case before the move to the model system
L191[03:13:42]
⇨ Joins: rebecca (~rebecca@209.95.50.27)
L192[03:14:45] <tterrag> exactly
L193[03:14:52] <tterrag> so why would it
cause so many problems now?
L194[03:16:33] <sham1> Well for one,
rendering items with manual OpenGL is not liked by forge
L195[03:16:58] <tterrag> that's exactly my
point. why?
L196[03:17:10] <sham1> I don't know. Ask
lex
L197[03:17:25] <tterrag> yes, that's
guaranteed to be a productive conversation
L198[03:19:17] ⇦
Quits: c233 (~c233@164.40.205.247) (Read error: Connection reset by
peer)
L199[03:19:42]
⇨ Joins: c233 (~c233@164.40.205.247)
L200[03:26:08] <RANKSHANK> well I can see
one issue with all the people that copy pasta without knowing what
they're doing. I mean you have to at least know what you're doing
to develop a workaround, so it keeps the twits out of the GL State
and away from indirectly messing other things up and having their
shortcomings blamed on another mod. Try adding
GlStateManager.glPolygonMode(0, 0); in the middle of an Item draw
and it manifests in leaf b
L201[03:30:32] ⇦
Quits: codahq (~codahq@c-73-65-219-228.hsd1.ut.comcast.net) (Ping
timeout: 201 seconds)
L202[03:30:56]
⇨ Joins: Javaschreiber
(~Thunderbi@p4ff8bde8.dip0.t-ipconnect.de)
L203[03:34:18]
⇨ Joins: Snapples
(uid167569@id-167569.highgate.irccloud.com)
L204[03:37:06] <tterrag> and once again
you are using the "but what about people doing dumb
things!" argument
L205[03:37:13] <tterrag> people will
ALWAYS do dumb things
L207[03:37:40] <sham1> People will do dumb
things
L208[03:37:46] <sham1> And when they do
not work
L209[03:37:50] <sham1> Who will they be
yelling at
L210[03:38:03]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L211[03:38:20] <Tazz> I just yell at
g++..it always seems to make mistakes that I have to go and
fix
L212[03:41:00] <sham1> why would you use
g++ when clang++ has so many other things about it that are very
nice
L213[03:41:07] <sham1> You can have code
completion
L214[03:41:52] <Tazz> because like g++ is
the masterrace
L215[03:43:29] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 201
seconds)
L216[03:43:48] <sham1> You can do whatever
you can do with g++ using clang++
L217[03:44:08] <sham1> And then some
L218[03:44:21] *
Tazz shrugs
L219[03:44:57] <Tazz> sham1, what do you
think of precompiled binaries for Eschelle? XD
L220[03:45:05] <Tazz> Im thinking about
doing it but Im still borderline about it
L221[03:45:14] <Tazz> it could potentially
be a nightmare
L222[03:45:27] <workshopcraft> anyone
figured out how to make it so a 3rd party can drop jsons in configs
for dynamic items and blocks?
L223[03:45:28] <sham1> Precompiled
binaries would mean having a precompiled stdlib
L224[03:45:29] <Tazz> however it could
also allow for more optimization passes, speed ups and
whatnot
L225[03:45:40] <sham1> To link with
stuff
L226[03:45:41] ***
kroeser|away is now known as kroeser
L227[03:45:46] <Tazz> yeah I know
L228[03:45:50] <Tazz> tis why I said
nightmare XD
L229[03:46:15] <Tazz> like all 3,500+
lines of code are for loading code on the fly and compiling
it
L230[03:46:23] <Tazz> never touching
something precompiled in any way XD
L231[03:46:35] <Tazz> intrinsically the
class is called Script to begin with XD
L232[03:46:55] <workshopcraft> i have a
solution but its a bit messy >.<
L233[03:48:12] <Tazz> I would love to
invest the time in making the compiler have 2-3 stages of code
generation vs having just a single one
L234[03:48:39] <Tazz> and make the
generated code go through multiple optimization sequences depending
on how hot the code gets
L235[03:49:29] <tterrag> sham1: are you
implying that the model system made LESS people come to the forge
devs with problems?
L236[03:49:38] <tterrag> and that GL item
renders would make MORE people do so?
L237[03:50:39] <sham1> Well, if we had
both, there would be a lot more problems than now
L238[03:50:54] <sham1> not a
surprise
L239[03:56:01] ⇦
Quits: McJty (~jorrit@94-225-203-206.access.telenet.be) (Quit:
Leaving)
L240[03:57:58] <tterrag> sham1: really?
you think so? then wouldn't we see the same with TESRs?
L241[04:00:20]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L242[04:03:02] <RANKSHANK> TESR's have
been around since day 1 though and haven't changed. plenty of
copypasta code works them
L243[04:07:51] ***
manmaed|AFK is now known as manmaed
L244[04:08:04] <illy> Tazz: why use g++
when you have gcc :P
L245[04:08:20] <Tazz> because g++ == C++
and gcc == C
L246[04:08:42] <illy> i know
L247[04:08:55] <Tazz> and Im writing my
lang in C++ XD
L248[04:08:57] <Tazz> so g++
L249[04:09:17] <Tazz> because C would be a
nightmare to translate too XD
L250[04:09:38] <illy> heh
L251[04:10:04] <Tazz> I abuse the shit otu
of the visitor pattern which isnt necessarily a strictly clased
based OO pattern however its not very fluid in C XD
L252[04:10:40] <illy> One of these days im
going to sit down and reacquaint myself in C++ havent used it in
about five years
L253[04:10:45] <Tazz> lol
L254[04:11:05] <Tazz> I literally only
chose to use C++ because of its features
L255[04:11:10] <Tazz> I would have
preferred to use C
L256[04:11:18] <sham1> C with classes
:P
L257[04:11:34] <Tazz> however C++ has
useful things for this stuff like operator overloading and function
overloading and namespaces and whatnot
L258[04:12:08] <Tazz> but still keeps the
performance benefits and keeps it as close as possible to the
hardware as C
L259[04:12:11] <Tazz> does*
L260[04:12:28] <illy> bah lets short cut
all this fluff machine code it is
L261[04:13:07] <Tazz> I write enough
assembly by writing the code for each instruction to emit...I dont
need to write the compiler in assembly XD
L262[04:14:17] <Tazz> plus like Im only
going to imagine what kind of nightmare a cross platform optimizing
compiler would be in pure assembly...
L263[04:14:48] <sham1> Well, you have to
bootstrap your thing somehow
L264[04:15:00] <Tazz> haha
L265[04:15:07] <Tazz> its not going to be
able to be bootstrapped XD
L266[04:15:30] <FusionLord> NPE on
Itemstack.getMetaData :/
L267[04:17:04] <Tazz> although I wanan
look into how v8 allows you to bind the runtime to an executable to
make standalone distrobutions
L268[04:17:04] <RANKSHANK> Itemstack must
be null
L269[04:17:15] <Tazz> seems like it would
be beneficial XD
L270[04:18:28] <FusionLord> but it ins't
-.-
L271[04:18:53] <RANKSHANK> have you
overwritten the getMetadata(ItemStack method) so it feeds from
NBT?
L272[04:20:05] ***
helinus|off is now known as helinus
L273[04:21:01] <illy> Tazz: have you tried
bootstrapping it with beer...
L274[04:21:14] <RANKSHANK> because default
returns a field int which cannot be null
L276[04:23:24] <FusionLord> Mojang servers
prob hate me rightn now... called the wrong method in the render
loop requesting a skin instead of calling for the cached version...
whoops
L277[04:30:39] <sham1> :P
L278[04:30:42] <sham1> You done
goof'd
L279[04:32:07] <FusionLord> watching the
TESR... hmm... why is the rotation so slow? *Looks in IDEA* why is
there console spam? *Reads spam* oh... Mojang server Timed out?
why?.... OH SHIT!
L280[04:32:23] <sham1> :D
L281[04:33:13] <FusionLord> The new
version of Graves is looking good tho :P
L282[04:34:31] <workshopcraft> lol
L283[04:35:52]
⇨ Joins: KGS
(~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L284[04:36:04] <workshopcraft> some weird
twitter people follow me lately >.<
L285[04:39:00]
⇨ Joins: kimfy
(~kimfy@236.5.200.37.customer.cdi.no)
L286[04:39:56] <workshopcraft> has anyone
got a better solution for dynamically generated blocks via configs
using a resource pack to add the missing jsons for custom blocks
added by pack dev >.<
L287[04:40:37] ⇦
Quits: Nitrodev (~Nitrodev@87-92-75-66.bb.dnainternet.fi) (Read
error: Connection reset by peer)
L288[04:40:40] <workshopcraft> i'm loathe
to pull apart forge and try and hack a mod into existence that
forces forge to check elsewhere
L290[04:41:27] <workshopcraft> show off
:P
L291[04:41:33] <FusionLord> huh
what?
L292[04:41:35] <tterrag> the lack of
lighting bothers me :P
L293[04:41:54] <workshopcraft> in all
seriousness, nothing i've not done already :P
L294[04:42:05] <tterrag> is the tombstone
bit done in TESR? it doesn't look shaded
L296[04:42:14] <workshopcraft> looks like
a json model
L297[04:42:31] <sham1> That grass
block
L298[04:42:38] <sham1> Blocks the head
:(
L299[04:42:51] <sham1> You should make it
so that you cannot place above the grave
L300[04:42:56] <tterrag> FusionLord: it
doesn't look like it has AO or diffuse lighting
L301[04:43:00] <tterrag> I see that it is
darker, but it's not shaded
L302[04:43:15] <tterrag> notice how the
grass blocks are darker on some sides
L303[04:44:33] <FusionLord> well the block
is done with the tesr as get rendertype doesn't get called multiple
times... cannot change it based on the block state... which since I
added support for C&B i need to not render the default
renderer
L305[04:47:14] <tterrag> uh yes it can
be
L306[04:47:29] <tterrag>
canRenderInLayer
L307[04:48:06] <tterrag> and re:image,
messed up blend mode it seems
L308[04:48:07] <workshopcraft> oh
NOICE
L309[04:48:08] <workshopcraft> BRO
L310[04:48:18] <workshopcraft> make the
heads like that :D
L311[04:48:38] <tterrag> sure, just blend
with a constant alpha
L312[04:48:41] <workshopcraft> that would
make so many kinds of sense
L313[04:48:43] <tterrag> it's easy enough
to do intentionally :P
L315[04:52:25] <tterrag> kinda
L316[04:52:28] <tterrag> is it a normal
block model now? :P
L317[04:52:45] <tterrag> looks like
diffuse lighting but no AO
L318[04:53:44] <FusionLord> no... just
enabled lighing
L319[04:53:50] <FusionLord> lighting
L320[04:54:11] <tterrag> ew
L321[04:54:13] <tterrag> that's even
worse
L322[04:54:16] <tterrag> just use a NORMAL
block model
L323[04:54:17] <tterrag> pls
L324[04:55:16] <workshopcraft>
@FusionLord, is that a json block model
L325[04:55:36] <FusionLord> use
canRenderInLayer?
L326[04:55:47] <sham1> Either that or a
Obj model for instance
L327[04:55:59] <FusionLord> obj
workshopcraft but could be converted to json
L328[04:56:00] <tterrag> that would
qualify as a "block model"
L329[04:56:08] <tterrag> obj can be used
just fine as non-TESR
L330[04:56:15] <FusionLord> i know
L331[04:56:19] <tterrag> no need to
convert
L332[04:56:31] <workshopcraft> i only ask
as thats what i know :P
L333[04:56:45] <FusionLord> tterrag, back
to the question on hand how do i stop the standard render?
canRenderInLayer?
L334[04:56:53] <workshopcraft> all my
crops growth states are json block models >.<
L335[04:56:58] <tterrag> what do you mean
stop it?
L336[04:57:22] <FusionLord> based on block
state I want the base to either render or not...
L337[04:57:44] <FusionLord> oh... derp I
ccan just do it in the blockstate.json
L338[04:57:47] <tterrag> yep
L339[04:59:57] <workshopcraft> have you
guys seen my barrels? :P
L340[05:00:17] <tterrag> yes
L341[05:00:22] <FusionLord> I see the word
Barrels you just typed :P
L342[05:01:01] <workshopcraft> you're on
the discord right tterrag :P
L343[05:01:26] <tterrag> yup
L345[05:01:33] <tterrag> m8 I fixed your
code for you
L346[05:02:09] <workshopcraft> currently
trying to optimise by baking things at moment
L347[05:02:10] <FusionLord> nice
L348[05:02:58] <workshopcraft> i have no
idea what i'm doing >.< lol
L349[05:04:16] <FusionLord> seems that the
ItemRenderer for ItemSkull overwrites the alpha value, I'll have to
go around it and get the IBakedModel for the alpha on the
heads.
L350[05:05:12] <RANKSHANK> lootpools: why
u no do context aware rolling
L351[05:05:51] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 198
seconds)
L352[05:09:34] <workshopcraft> o.O
L353[05:09:50] <workshopcraft> apparently
my username doesnt exist on minecraftforge.net >.<
L354[05:09:55] <tterrag> FusionLord: like
I said, just blend with constant alpha
L355[05:11:51] <workshopcraft> what kind
if idiot posts a tutorial in a forum board thats off limits to
people >.<
L357[05:12:40] <tterrag> how are you
lighting the heads?
L358[05:13:08]
⇨ Joins: Hgrebnednav
(~Hgrebnedn@d8d872a6e.access.telenet.be)
L359[05:13:31] ⇦
Quits: Katrix (~Katrix@2a02:fe0:cb10:2420:e9a0:92f8:baa6:7852)
(Ping timeout: 201 seconds)
L361[05:16:18] <tterrag> that rotate code
is going to be really stuttery
L362[05:17:02] <FusionLord> yeah... I
know... just cause it isn't interpolated working on that next
L363[05:17:23] <FusionLord> does the
lighting look better? now that the tesr isn't rendering the
block?
L364[05:17:28] ***
Kolatra|away is now known as Kolatra
L365[05:17:32] <tterrag> also you are
using GL lighting on the head, which probably won't ever match with
world lighting
L366[05:17:43] <tterrag> yes, it
does
L367[05:17:48] <tterrag> a lot better
:P
L368[05:18:07] <FusionLord> there is not
lighint on the head
L369[05:18:17] <FusionLord> that lighting
is for something else
L370[05:18:38] <tterrag> I can clearly see
lighting effects on the head in your screenshot :P
L372[05:18:38] <FusionLord> the
highlighted lines are for the head
L373[05:18:55] <FusionLord> that isn't
cause of me
L374[05:19:16] <tterrag> lex:
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
L375[05:19:20] <tterrag> pls :D
L376[05:19:33] <tterrag> I hate the
default swing look :D
L377[05:20:00] <FusionLord> what tterrag
said lex
L378[05:20:09] <tterrag> otherwise, looks
nice
L379[05:20:11] <tterrag> very nice
L380[05:20:31] <sham1> try {
UIManager.setLookAndFeel(UIManager.setSystemLookAndFeelClassName());
} catch (Exception ex) {}*
L381[05:20:41] <LexManos> no fucking idea
what that does
L382[05:20:51]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L383[05:20:53] <LexManos> either way it
functions so im happy
L384[05:20:59] <tterrag> it just skins it
to the OS theme
L385[05:21:00] <sham1> Well, that's
nice
L386[05:21:00] <FusionLord> sets the
"theme" of swing to that of the system
L387[05:21:11] <tterrag> super simple way
to make swing UIs not look ugly as sin
L388[05:21:45] <LexManos> Time for bed
tho, tomarrow, I ened to get back to actual work.. RB time
u.u
L389[05:21:56] <sham1> Good night
Lex
L390[05:22:03] <FusionLord> night o7
L392[05:24:09] <tterrag> missed a comment
:P
L393[05:24:16] <Kolatra> rip
L394[05:24:26] <sham1> Ribs
L395[05:24:32] ⇦
Quits: Cypher121 (~Cypher121@fox.cypher.coffee) (Ping timeout: 186
seconds)
L396[05:24:57] <LexManos> fatjar works,
the shrinking doesnt, but i commented out both because I dont want
to publish 12MB jars per build.
L397[05:25:07] <LexManos> If you can get
shrinking working that'd be awesome
L398[05:26:30] <tterrag> no I meant you
missed a line to be commented out
L399[05:26:32] <tterrag> so the
build.gradle errored
L400[05:26:35] <tterrag> I found it though
:P
L402[05:27:12] <tterrag> that's just win7
though. win10 will look like win10 :P
L403[05:28:25] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 192
seconds)
L404[05:29:23]
⇨ Joins: Cypher121
(~Cypher121@fox.cypher.coffee)
L405[05:29:44] ⇦
Quits: RANKSHANK
(~Michael@ppp121-44-11-113.lns20.syd4.internode.on.net) (Read
error: Connection reset by peer)
L406[05:29:47]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L407[05:30:33]
⇨ Joins: LexLap (~LexManos@172.76.2.58)
L408[05:30:34]
MineBot sets mode: +o on LexLap
L409[05:37:22] ⇦
Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
(Remote host closed the connection)
L410[05:38:35] <tterrag> lex this layout
manager is freakin weird
L411[05:38:40] <tterrag> never used
it
L412[05:41:56] ⇦
Quits: Javaschreiber (~Thunderbi@p4ff8bde8.dip0.t-ipconnect.de)
(Quit: Javaschreiber)
L413[05:45:16] <FusionLord> strange
constanly getting a too many requests when requesting my own
skin... IE just joining the world...
L414[05:50:20] <FusionLord> tterrag,
better rotation? its interpolated :P
L415[05:50:48] ***
Darkhax is now known as Darkhax_AFK
L417[05:51:46] <tterrag> that's not going
to work
L418[05:51:59] <FusionLord> whay do you
say that?
L419[05:52:05] <tterrag> tick++ from the
render call
L420[05:52:16] <tterrag> it will spin
luidicrously fast and the rate will change based on FPS
L421[05:52:17] <FusionLord> oh right
:P
L422[05:53:32] <tterrag> for it to work
properly you need to store a spin speed
L423[05:53:48] <tterrag> then the rotation
for the current tick is spin + (partialTick * spinSpeed)
L424[05:53:58] <tterrag> each tick
(SEPARATE FROM RENDERING) you do spin+= spinSpeed
L425[05:54:38] <workshopcraft> i've seen
this
L426[05:54:40] <workshopcraft> err
L427[05:54:55] <workshopcraft> trying to
remember where
L428[05:54:58] <FusionLord> yeah,
implements ITickable and onUptate() { lastTick = tick; tick++; }
then the same method without the tick++ and last tick not being
local
L429[05:55:03] <workshopcraft> was an
entityItem
L430[05:55:30]
⇨ Joins: iari (~iari___@evana.futhark24.org)
L431[05:55:46] <FusionLord> wasn't
thinking it throught all of the way.
L433[05:56:39] <tterrag> you're just
making it convenient by having your spin rate = 1
L434[05:56:47] <tterrag> (which is kinda
lazy, but if it works, meh)
L435[05:57:11] <FusionLord> well what
should it be?
L436[05:57:12] <tterrag> also, lastTick =
tick++ is semantically identical
L437[05:57:16] <tterrag> to what you ahve
ther
L438[05:57:36] <FusionLord> cause tick++
doesn't increment until it is called I know
L439[05:57:54] <tterrag> well you are
wasting time there. tick - lastTick will *always* be 1
L440[05:57:55] <tterrag> right?
L441[05:58:15] <FusionLord> true :P
L442[05:58:16] <tterrag> so it's just
lastTick + partialTicks
L443[05:58:21] <tterrag> which is just
tick + partialTicks
L444[05:58:26] <tterrag> (the -1 is
insignificant)
L445[05:58:42] <tterrag> so like I said,
making the spin rate 1 is convenient, and you don't need lastTick
at all (last tick is just tick - 1)
L446[05:59:32] <tterrag> and making your
TE update for this is way overkill.
L448[05:59:44] <tterrag> easy to write,
acessible by everything, only called once ever
L449[06:00:13] <FusionLord> that syncs all
heads
L450[06:00:18] <tterrag> of course, it
means all rotation will be the same, but you can offset it with a
seeded random
L452[06:01:23] <tterrag> my seeding there
is a bit lazy though
L453[06:02:11] <tterrag> use
MathHelper.getPositionRandom for the seed :D
L454[06:02:37] <tterrag> or better yet
just use that value as your offset (modulo something)
L455[06:06:29] ***
amadornes[OFF] is now known as amadornes
L456[06:09:27]
⇨ Joins: RichardG (~richardg8@201.37.241.205)
L457[06:09:27]
MineBot sets mode: +v on RichardG
L458[06:12:45] <tterrag> FusionLord: you
get all that?
L459[06:12:45] <tterrag> lol
L460[06:12:51] <tterrag> I think I killed
him
L461[06:12:51] <FusionLord> yeah
L462[06:12:54] <tterrag> oh good
L463[06:12:55] <FusionLord> nope
good
L465[06:14:24] <FusionLord> was playing
with my phone forgot tos tell you I got it
L466[06:14:48] <tterrag> how I wish MC
*had* proper changelogs
L467[06:15:11] ⇦
Quits: Naiten (Naiten@5.143.89.50) (Ping timeout: 201
seconds)
L468[06:15:22]
⇨ Joins: quadraxis
(~chatzilla@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L469[06:18:44] <FusionLord> ... the head
is spinning out of control now :P seems like the ClientTickEvent
with Phase.END several times... :/
L470[06:21:21] <sham1> I wish that MC
*had* proper updates
L471[06:22:07] <illy> I wish i didnt run
out of beer
L472[06:26:47] ⇦
Quits: abab9579 (~abab9579@112.166.128.227) (Ping timeout: 192
seconds)
L473[06:31:03] ⇦
Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping timeout:
198 seconds)
L474[06:35:53] <FusionLord> wow who knew
when another head is spinning it could make you dizzy aswell
xD
L475[06:37:50]
⇨ Joins: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L476[06:38:39] <FusionLord> 2 seconds
after /toggledownfall
L477[06:38:42] <FusionLord>
really!!!
L479[06:40:20] <FusionLord> thanks
tterrag
L480[06:42:05] ⇦
Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
(Ping timeout: 186 seconds)
L481[06:43:36]
⇨ Joins: abab9579 (~abab9579@112.166.128.227)
L482[06:47:05] <Lumien> If i want to add a
capability to my te, do i have to save them manually in addition to
the forge capabilities thingy?
L483[06:55:55] <workshopcraft> that
reminds me
L484[06:56:03] <workshopcraft> need to
move my factorio account to steam
L485[06:57:00]
⇨ Joins: mezz_ (~mezz@24.6.28.151)
L486[06:57:00]
MineBot sets mode: +v on mezz_
L487[06:58:56] ⇦
Quits: mezz (~mezz@24.6.28.151) (Ping timeout: 186
seconds)
L488[06:59:10] <LatvianModder> tintindex
was removed?
L490[06:59:48] <LatvianModder> models no
longer need it/
L491[06:59:52] <LatvianModder> ?
L492[07:00:30] <LatvianModder> oh wait,
blocks still have it.. im confused..
L493[07:00:36]
⇨ Joins: Naiten (~Naiten@77.35.33.243)
L494[07:01:10] <Lumien> With items the
tintindex is the layer
L495[07:01:28] <LatvianModder> ah. so
layer0's index is 0?
L496[07:02:13] ⇦
Quits: Nentify (sid14943@id-14943.highgate.irccloud.com) (Quit:
Connection closed for inactivity)
L497[07:08:52] <FusionLord> hmm... how to
add the rotating head to the item... :/ haven't done special item
rendering since IItemRenderer
L498[07:10:01] ⇦
Quits: VikeStep (~VikeStep@101.184.243.180) (Quit:
Leaving)
L499[07:10:28] <FusionLord> tterrag, ^
:P
L500[07:10:51]
⇨ Joins: raoulvdberge
(uid95673@id-95673.richmond.irccloud.com)
L501[07:15:01] ***
AEnterprise is now known as AEnterpriseAFK
L502[07:25:17]
⇨ Joins: Lunatrius` (~Lunatrius@77.38.21.26)
L504[07:26:52] <FusionLord> doesn't look
that great as the alpha blending is all weird
L505[07:30:09] ⇦
Quits: Lunatrius (~Lunatrius@77.38.21.26) (Ping timeout: 384
seconds)
L506[07:30:09] ***
Lunatrius` is now known as Lunatrius
L507[07:30:26]
⇨ Joins: yopu (~yopu@184-89-191-67.res.bhn.net)
L508[07:30:27] ⇦
Quits: abab9579 (~abab9579@112.166.128.227) (Ping timeout: 198
seconds)
L509[07:32:46] <kimfy> Is there a way of
changing the stacksize in a player's hand when being placed? do I
have to replace the whole item in that slot?
L510[07:33:13] <LatvianModder>
itemStack.stackSize--;
L511[07:35:05] <FusionLord> kimfy, ^
L512[07:35:05] <workshopcraft>
bwahahahaa
L513[07:35:08] <workshopcraft> thats
freaking awesome
L514[07:36:22] <workshopcraft> i cant wait
to build some futuristic barrels :P
L515[07:36:33] <workshopcraft> i.e. not
wooden ones
L516[07:36:34] <raoulvdberge> you might
have to do updateHeldItem
L517[07:36:36] <workshopcraft> with
holograms :P
L518[07:36:50]
⇨ Joins: Katrix
(~Katrix@cm-84.210.73.141.getinternet.no)
L519[07:37:14] <kimfy> that value is never
stored though
L520[07:37:49] <kimfy> whatever I do to
the itemstack in the placeevent is overwritten by what happens in
the onItemUse call
L521[07:37:52] <kimfy> I think
L522[07:38:14] <raoulvdberge> don't you
have to cancel the event
L523[07:38:51] <FusionLord> kimfy, make
sure you are doing it server side
L525[07:39:38]
⇨ Joins: Drullkus
(~Dru11kus@2601:646:8301:ead3:f0fa:e0f2:c369:41e3)
L526[07:39:47] <kimfy> How is that going
to help? it's still being overwritten, is it not? Look at
ForgeHooks#onPlaceItemIntoWorld
L527[07:40:48] <FusionLord> Ha now some go
forward and some backwards
L528[07:42:39] ⇦
Quits: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
(Quit: Leaving.)
L529[07:42:56] ***
kroeser is now known as kroeser|away
L530[07:43:17] ⇦
Quits: Drullkus (~Dru11kus@2601:646:8301:ead3:f0fa:e0f2:c369:41e3)
(Ping timeout: 192 seconds)
L531[07:46:45] <kimfy> Not sure how I
should go about this. Calling itemstack.getItem().onItemUse has to
happen no matter what, but editing the itemstack after that method
has been called looks odd because onITemUse decreases the stackSize
and if I decide to increase it the value in the gui flickers a lot
lol
L532[07:50:31] <tterrag> FusionLord: you
won't be able to do it in the item render
L533[07:51:05]
⇨ Joins: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
L534[07:51:11] <tterrag> kimfy: when being
placed? did you look at the vanilla ItemBlock ?
L535[07:52:34] <FusionLord> just not
possible at all?
L536[07:52:56] <tterrag> not really
L537[07:53:00] <tterrag> there is no GL
access in item renders
L538[07:53:00] <FusionLord> :/
L539[07:53:03] <FusionLord> lame
L540[07:53:10] <tterrag> fry|back18aug: oh
look, another use case
L541[07:53:58] <kimfy> what do you mean
tterrag?
L542[07:54:00] <FusionLord> whoa fry won't
be back til the 18th of aug?
L543[07:54:15] <tterrag> kimfy: could you
explain what you are trying to do a bit better?
L544[07:54:20] <kimfy> Oh yeah sure,
sorry
L545[07:55:04] <kimfy> I'm trying to edit
the size of an ItemStack in the BlockEvent.PlaceEvent
L546[07:55:05] ⇦
Quits: Pentium320 (aperture@31.7.44.169) (Ping timeout: 384
seconds)
L547[07:55:39] <FusionLord> that moment
when you turn around after forgetting an alt is logged in behind
you :P
L548[07:56:51] <tterrag> kimfy: why?
L549[07:57:00] <tterrag> you just
explained your solution - not what you are trying to do
L551[07:59:18]
⇨ Joins: Pentium320 (aperture@31.7.44.169)
L552[07:59:23] <kimfy> Uhh
L553[08:01:16] <kimfy> I'm trying to make
a "gamemode" of some sort. It's like creative mode, but
in survival - currently doing everything through ASM but want to
change to using events if possible. When a block is placed, I want
to check if that block is a "CreativeBlock", if true,
don't decrease the stackSize of the block the user is placing
L554[08:01:27] <kimfy> Is that better?
Sorry for my shite explanations
L555[08:02:15] <kimfy> tterrag
L556[08:03:11] ⇦
Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Quit:
Leaving)
L557[08:03:42] <tterrag> makes sense
L558[08:04:28] <tterrag> sadly it appears
the itemstack decrementation is hardcoded
L559[08:05:00] ⇦
Quits: turmfalke
(~turmfalke@p20030056CF06BAD157EDBBDE2527A260.dip0.t-ipconnect.de)
(Ping timeout: 190 seconds)
L560[08:05:13] <kimfy> Yeah I know :/ I
thought about making an event for decreasing/increasing stack
sizess but there are soo many references to the hardcoded one
:P
L561[08:05:20] <kimfy> no I mean a
method
L562[08:05:41] <tterrag> yeah that
wouldn't be feasible
L563[08:06:26] <tterrag> what you could do
is cancel the event entirely and place the block yourself
L564[08:06:32] <tterrag> since it's
"creative" it shouldn't be too hard
L565[08:06:46] <tterrag> not the best
solution but it would work :P
L566[08:07:30] <kimfy> True, but I'd have
to edge case items like snow and other items I haven't even thought
about yet so I think I'll pass
L567[08:09:17]
⇨ Joins: sinkillerj
(~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net)
L568[08:14:11]
⇨ Joins: Hgreb
(~Hgrebnedn@d8d872a6e.access.telenet.be)
L569[08:16:16] ⇦
Quits: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be) (Ping
timeout: 186 seconds)
L570[08:17:46] ***
PaleOff is now known as PaleoCrafter
L571[08:18:32]
⇨ Joins: turmfalke
(~turmfalke@p20030056CF06BA2AE1A0A3681B1BC41E.dip0.t-ipconnect.de)
L573[08:30:29] <PaleoCrafter> FusionLord,
I hope the second one performs better :P
L574[08:30:44] <PaleoCrafter> because it
looks more intensive xD
L575[08:31:21]
⇨ Joins: alex_6611
(~alex_6611@p5DE793D4.dip0.t-ipconnect.de)
L576[08:31:36] <FusionLord> seems to run
fine... >.> ofc I have a beast of a computer...
L577[08:34:50] ⇦
Quits: Jezza (~Jezza@bps-gw.hrz.tu-chemnitz.de) (Remote host closed
the connection)
L578[08:35:01] <LatvianModder> wtf is
going on in ItemStack:211.. forge pls
L579[08:35:24] <PaleoCrafter> lines don't
necessarily match across workspaces, LatvianModder :P
L580[08:35:40] <LatvianModder>
readFromNBT
L581[08:35:48] <LatvianModder> this.capNBT
= nbt.hasKey("ForgeCaps") ?
nbt.getCompoundTag("ForgeCaps") : null;
L582[08:35:48] <LatvianModder>
this.setItem(Item.getByNameOrId(nbt.getString("id")));
L583[08:35:49] <LatvianModder> this.capNBT
= null;
L584[08:36:00] <PaleoCrafter> lol
L585[08:36:31] <FusionLord> what was the
point of loading the ForgeCaps
L586[08:36:32] <FusionLord> ?
L587[08:36:34] <FusionLord> :P
L588[08:36:39] <LatvianModder> Thats the
thing
L589[08:37:48] <tterrag> it was introduced
in the intial cap commit
L590[08:37:51] <tterrag> so...who
knows
L591[08:37:53] <tterrag> ask lex
L592[08:38:11] <tterrag> wait, dude
L593[08:38:12] <tterrag> you're
blind
L594[08:38:14] <tterrag> look at
setItem
L595[08:38:21] <tterrag> it uses
capNBT
L596[08:38:27] <LatvianModder> what?
L597[08:38:37] <LatvianModder> oooh
L598[08:38:38] <tterrag> you know. the
method called before it nulls it?
L599[08:39:32] <tterrag> capNBT seems like
it exists to not change the signature of setItem
L600[08:39:36] <LatvianModder> yeah, didnt
think of checking it, because last time i did, it was just the last
2 lines of setItem :P
L601[08:39:45] <FusionLord> hmm... but why
null it? why not just pass as a param? why make it a field?
L602[08:39:53] <tterrag> read up
L603[08:40:00] <tterrag> forge isn't going
to change the signature of a public MC method
L604[08:40:05] <LatvianModder>
¯\_(ツ)_/¯
L605[08:40:08] <tterrag> and it's not even
needed, so overloading it would be pointless
L606[08:40:12]
⇨ Joins: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L607[08:40:20] <tterrag> deprecate it,
hack around it, move on. keep patches as small as possible
L608[08:40:47] <FusionLord> oh... didn't
realize that is a MC Method :P
L609[08:41:03] <FusionLord> my bad
L610[08:42:42] <FusionLord> PaleoCrafter,
to answer you question of how it performs... still 300+ FPS with
about 30 placed nearby
L611[08:43:00] <tterrag> PaleoCrafter:
those skulls boil down to 12 quads
L612[08:43:12] <tterrag> the text on the
old grave was...a lot more than that
L613[08:43:16] <PaleoCrafter> I meant
specifically in relation to the previous one which could
technically have been completely baked :P
L614[08:43:17] <tterrag> text rendering is
awfully slow
L615[08:43:34] <tterrag> there's no way to
bake text rendering yet. at least not without losing font support
and being a royal pain in the butt
L616[08:43:46] <PaleoCrafter> hence the
"technically" xD
L617[08:45:02] ⇦
Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
(Ping timeout: 201 seconds)
L619[08:48:22] <PaleoCrafter> jesus
christ, that's creepy xD
L620[08:48:40] <FusionLord> You're welcome
:P
L621[08:52:14] ***
kroeser|away is now known as kroeser
L622[08:54:11] <Chais> Hey
L623[08:54:23] <FusionLord> Hey o/
L624[08:54:59] <Chais> So I'm fiddling
around with my modded doors again. I've made it a TE and it works
fine
L625[08:55:09] <Chais> except when I
destroy the block
L626[08:55:16] <Chais> then it crashes
everything xD
L627[08:55:34] <FusionLord> log
L628[08:55:48]
⇨ Joins: abab9579 (~Abastro@183.107.13.6)
L629[08:56:18] <Chais> sec. It's a NPE in
my getActualState()
L630[08:57:03]
⇨ Joins: xEviLSpaWnx
(~xEvilSpaw@cpc21-pete9-2-0-cust202.4-4.cable.virginm.net)
L632[08:58:05] <FusionLord> code
L633[08:59:19] <tterrag> did you try
looking at what might be null on that line?
L634[08:59:29] ***
TTFT|Away is now known as TTFTCUTS
L637[08:59:55] <gigaherz> [14:27]
(FusionLord): doesn't look that great as the alpha blending is all
weird
L638[09:00:01] <gigaherz> if you have a
convex object
L639[09:00:15] <gigaherz> you can use a
trick and draw twice, first with clockwise culling, and then with
ccw
L640[09:00:21] <gigaherz> (assuming
ccw=front)
L641[09:00:34] <Chais> it's the return
value from the super function
L642[09:00:48] <gigaherz> and yes, a cube
is convex ;P
L643[09:00:49] ⇦
Quits: Abastro (~Abastro@112.166.128.227) (Ping timeout: 384
seconds)
L644[09:02:02] <PaleoCrafter> could also
disable culling if you already have GL access :P
L645[09:02:30] <workshopcraft> Chais, its
crashing when you break the door?
L646[09:02:31] ⇦
Quits: abab9579 (~Abastro@183.107.13.6) (Ping timeout: 384
seconds)
L647[09:02:34] <Chais> yup
L648[09:02:36]
⇨ Joins: Abastro (~Abastro@112.166.128.227)
L649[09:02:53] <workshopcraft> should you
check the door's TE still exists before returning true?
L650[09:02:55] <Chais> I'd guess it's some
persistence issue
L651[09:03:01] <workshopcraft> in
hasTileEntity
L652[09:03:04] <workshopcraft> or
not?
L653[09:03:42] <Chais> not sure. so far
everyone just told me to override that to return true
L654[09:04:14] <FusionLord> I'll look into
disabling culling, just too tired at the moment to C&P the
vanilla code that enables the culling >.>
L655[09:04:35] <tterrag> um?
GlStateManager.disableCull()
L656[09:05:01] <FusionLord> yeah but the
following method calls GlStateManager.enableCulling()
L657[09:05:13] <FusionLord> which is a
vanilla method
L658[09:05:31] <tterrag> ah
L659[09:05:34] <FusionLord>
TileEntitySkullRenderer.renderSkull
L660[09:05:37] <tterrag> yeah that's not
going to be easy to avoid then :P
L661[09:05:39] <FusionLord> or something
like that
L662[09:05:51] <tterrag> Chais: looks like
the door class you are extending makes some assumptions that are
not safe when working with a TE
L663[09:05:59] <gigaherz> PaleoCrafter:
no
L664[09:06:01] <gigaherz> with
transparency
L665[09:06:08] <gigaherz> if the front
quad draws first
L666[09:06:11] <gigaherz> the back one
wouldn't draw
L667[09:06:17] <Chais> tterrag: it's the
vanilla door
L668[09:06:18] <gigaherz> so you HAVE to
draw them in order
L669[09:06:21] <tterrag> Chais: I am
aware
L671[09:06:26] <gigaherz> it just happens
that when you draw a convex mesh
L672[09:06:36] <gigaherz> the backfaces
are always behind the front faces
L673[09:06:38] <tterrag> Chais: easiest
solution would jsut be to null chek the TE inside
getACtualState
L674[09:06:44] <gigaherz> so drawing twice
with different cullings does the trick
L675[09:06:58] <tterrag> the crash comes
from bounding box which shouldn't care about the COLOR property
anyways
L676[09:10:45] <Chais> especially since I
added that property
L677[09:10:45] <Chais> huh... could it be
some sort of name collision?
L678[09:10:52] <Chais> tterrag: it works
when checking for null. but I feel that shouldn't be
necessary
L679[09:11:04] <tterrag> it usually isn't.
but as I said, BlockDoor makes some assumptions
L680[09:13:13]
⇨ Joins: Jezza (~Jezza@92.206.5.6)
L681[09:15:03] <Chais> could the problem
be that getBoundingBox() calls getActualState again? or would that
use the BlockDoor implementation?
L682[09:15:28] <Chais> not quite sure how
java would handle the inheritance here
L683[09:17:35] <tterrag> it appears that
getBoundingBox can be called after the TE is removed
L684[09:17:42] <tterrag> which is dumb,
but that's vanilla
L685[09:17:48] <tterrag> obviously vanilla
doors have no issue with this because they have no TE
L686[09:18:53] <Chais> the joy of evolved
projects ^^
L687[09:23:21] <Chais> can I do layerd
textures for blocks too? or only for items=
L688[09:23:39] <gigaherz> you
"can", but not as easily as items
L689[09:23:51] ⇦
Quits: Benimatic (~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
(Ping timeout: 198 seconds)
L690[09:24:06] <gigaherz> you'd have to
define each layer explicitlyin the model
L691[09:24:17]
⇨ Joins: maxlowry123
(~IceChat9@pool-71-244-115-181.albyny.fios.verizon.net)
L692[09:24:28] <gigaherz> and maybe have
each layer be just a tiny tiny bit larger than the previous (not
sure about that)
L693[09:24:51] <Chais> hmkay. might still
be worth it. without it I'd look at 6 (vanilla woods) * 16 (colors)
door textures
L694[09:25:17] <tterrag> gigaherz: not if
they are the same size
L695[09:25:26] <tterrag> z-fighting only
affects different size/position quads :P
L696[09:25:41] ⇦
Quits: Delenas (~Delenas@2600:1016:b11a:e44b:512a:ade8:ea8e:17df)
(Ping timeout: 186 seconds)
L697[09:25:45] <gigaherz> yeah I'm not
even at home, so dunno if the drawing is >= or >
L698[09:26:02] <gigaherz> if it's >=,
then no need
L699[09:26:06] <gigaherz> if itw as >
then you'd need it
L700[09:26:38] <gigaherz> hmf I think I'll
be leaving work soon
L701[09:26:40] <gigaherz> bb in a
bit
L702[09:27:10]
⇨ Joins: Brokkoli
(~Brokkoli@p5B23C8DB.dip0.t-ipconnect.de)
L703[09:28:50]
⇨ Joins: Nentify
(uid14943@id-14943.highgate.irccloud.com)
L705[09:32:03] <PaleoCrafter> gigaherz, I
thought it'd take disabled culling into consideration
L706[09:32:06]
⇨ Joins: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
L707[09:32:49] ⇦
Quits: sinkillerj (~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net)
(Quit: またね)
L708[09:36:36]
⇨ Joins: Ordinastie_
(~Ordinasti@87-231-58-94.rev.numericable.fr)
L709[09:38:42] ⇦
Quits: Jezza (~Jezza@92.206.5.6) (Killed (NickServ (GHOST command
used by Jezza_)))
L710[09:38:59]
⇨ Joins: Jezza (~Jezza@92.206.5.6)
L711[09:42:16]
⇨ Joins: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L712[09:45:41] ⇦
Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
(Ping timeout: 186 seconds)
L713[09:48:38] <gigaherz> home!
L714[09:49:06] <gigaherz> PaleoCrafter:
the gpu doesn't sort for you or anything -- if you draw with
culling off, it will simply draw all the triangles in whatever
order they come, regardless of winding
L715[09:50:05] <gigaherz> so if a closer
triangle draws first, then the next one will fail the depth
tests
L716[09:50:08] <gigaherz> and even if it
didn't
L717[09:50:14] <gigaherz> blending is
dependant on order
L718[09:50:21] <gigaherz> so the result
would look wrong
L719[09:51:00] <gigaherz> for convex
polygons that draw-twice works, but it does draw twice, so it's not
advisable for cases whereyou have a lot of objects and/or for very
high vertex counts
L720[09:51:22] <gigaherz> then there's
more complex methods such as peeling
L722[09:55:25]
⇨ Joins: Javaschreiber
(~Thunderbi@p4ff8bde8.dip0.t-ipconnect.de)
L723[09:55:29] ⇦
Quits: Javaschreiber (~Thunderbi@p4ff8bde8.dip0.t-ipconnect.de)
(Client Quit)
L724[09:56:48] ⇦
Quits: Naiten (~Naiten@77.35.33.243) (Read error: Connection reset
by peer)
L725[09:58:13]
⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L726[10:01:57] ⇦
Quits: Katrix (~Katrix@cm-84.210.73.141.getinternet.no) (Read
error: Connection reset by peer)
L727[10:09:56]
⇨ Joins: stiforr
(~stiforr@ip72-216-4-156.pn.at.cox.net)
L728[10:11:49]
⇨ Joins: Samario
(~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L729[10:18:56] ⇦
Quits: raoulvdberge (uid95673@id-95673.richmond.irccloud.com)
(Quit: Connection closed for inactivity)
L730[10:20:59] ***
Darkhax_AFK is now known as Darkhax
L731[10:26:44]
⇨ Joins: IoP (jikuja@irc.ioppi.info)
L732[10:27:03]
⇨ Joins: abab9579 (abab9579@112.166.128.227)
L733[10:30:29] ⇦
Quits: abab9579 (abab9579@112.166.128.227) (Ping timeout: 201
seconds)
L734[10:31:39] ⇦
Quits: candybar (~foo@adsl-074-181-053-011.sip.sav.bellsouth.net)
(Ping timeout: 198 seconds)
L735[10:36:09] ⇦
Quits: GildedGames
(~GildedGam@ec2-174-129-131-190.compute-1.amazonaws.com) (Remote
host closed the connection)
L736[10:36:16]
⇨ Joins: BlueMonster
(uid82864@id-82864.tooting.irccloud.com)
L737[10:36:19]
⇨ Joins: GildedGames
(~GildedGam@ec2-54-205-143-233.compute-1.amazonaws.com)
L738[10:40:45]
⇨ Joins: mort (~mort@188.166.114.29)
L739[10:40:47] <mort> hey
L740[10:41:17] <diesieben07> hi
L741[10:44:12] <mort> is anyone at
#forgegradle? It's pretty quiet there atm, and I have a problem
with it
L742[10:46:25]
⇨ Joins: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net)
L743[10:54:04]
⇨ Joins: Redrield (~Emacs@178.ip-158-69-202.net)
L744[10:57:54]
⇨ Joins: Katrix
(~Katrix@2a02:fe0:cb10:2420:ecde:8200:ddc0:84e2)
L745[10:59:34]
⇨ Joins: codahq
(~codahq@c-73-65-219-228.hsd1.ut.comcast.net)
L746[11:04:59] ⇦
Quits: gigaherz (gigaherz@105.red-88-6-85.staticip.rima-tde.net)
(Read error: Connection reset by peer)
L747[11:05:30]
⇨ Joins: gigaherz
(gigaherz@105.red-88-6-85.staticip.rima-tde.net)
L748[11:07:04] ⇦
Quits: AnrDaemon (~ZNC@darkdragon-nln.starlink.ru) (Ping timeout:
198 seconds)
L749[11:07:15]
⇨ Joins: AnrDaemon
(~ZNC@darkdragon-nln.starlink.ru)
L750[11:09:28] ⇦
Quits: xEviLSpaWnx
(~xEvilSpaw@cpc21-pete9-2-0-cust202.4-4.cable.virginm.net) (Ping
timeout: 198 seconds)
L751[11:10:40] ⇦
Quits: NoChance (~nochance@206.ip-51-254-139.eu) (Ping timeout: 198
seconds)
L752[11:11:15] ⇦
Quits: iari (~iari___@evana.futhark24.org) (Ping timeout: 198
seconds)
L753[11:11:16] ⇦
Quits: iPixeli (~iPixeli@5.80.16.21) (Ping timeout: 198
seconds)
L754[11:11:23]
⇨ Joins: iPixeli (~iPixeli@5.80.16.21)
L755[11:11:23]
MineBot sets mode: +v on iPixeli
L756[11:11:33]
⇨ Joins: iari (~iari___@evana.futhark24.org)
L757[11:11:44] ⇦
Quits: cpup (~cpup@32.218.115.149) (Ping timeout: 186
seconds)
L758[11:12:25]
⇨ Joins: xEviLSpaWnx
(xEviLSpaWn@cpc21-pete9-2-0-cust202.4-4.cable.virginm.net)
L759[11:13:18]
⇨ Joins: TechnicianLP
(~Technic@p4FE56C35.dip0.t-ipconnect.de)
L760[11:13:25]
⇨ Joins: NoChance
(~nochance@206.ip-51-254-139.eu)
L761[11:16:32]
⇨ Joins: cpup (~cpup@32.218.114.23)
L762[11:18:06]
⇨ Joins: Javaschreiber
(~Thunderbi@p4ff8bde8.dip0.t-ipconnect.de)
L763[11:20:08]
⇨ Joins: CoderPuppy (~cpup@32.218.114.41)
L764[11:20:52]
⇨ Joins: Elec332
(~Elec332@ip5456d4a5.speed.planet.nl)
L765[11:21:53] ⇦
Quits: Kaelten (~Kaelten@2600:3c00::f03c:91ff:fedb:9160) (Remote
host closed the connection)
L766[11:22:53] <techbrew> mort, usually
AbrarSyed is the guy to talk to
L767[11:23:08] <tterrag> abrar hasn't been
around in ages
L768[11:23:31] <techbrew> I'd wondered,
thought maybe I'd just missed him.
L769[11:24:17] <techbrew> Hey, anyone know
offhand when Forge added the code to check if a mod requires Java
8?
L770[11:24:18] ⇦
Quits: Javaschreiber (~Thunderbi@p4ff8bde8.dip0.t-ipconnect.de)
(Quit: Javaschreiber)
L771[11:25:04] <diesieben07> techbrew,
Build 1.9-12.16.0.1884-1.9:
L772[11:25:19] ⇦
Quits: cpup (~cpup@32.218.114.23) (Ping timeout: 384
seconds)
L773[11:25:20] <diesieben07> changelogs
are a beautiful thing :P
L774[11:25:43]
⇨ Joins: KGS
(~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L775[11:26:02] <techbrew> I did say
"offhand" :) Was wondering if it was 1.8 or 1.9.
L776[11:27:00] ⇦
Quits: keybounce
(~keybounce@adsl-108-192-89-65.dsl.bkfd14.sbcglobal.net) (Quit:
Sleep? Did I say sleep?)
L777[11:27:01] <diesieben07> :P
L778[11:30:28] ⇦
Quits: Redrield (~Emacs@178.ip-158-69-202.net) (Ping timeout: 198
seconds)
L779[11:31:39] ⇦
Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping timeout:
198 seconds)
L780[11:33:21] ⇦
Quits: Benimatic (~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
(Ping timeout: 192 seconds)
L782[11:33:41] ⇦
Quits: xEviLSpaWnx
(xEviLSpaWn@cpc21-pete9-2-0-cust202.4-4.cable.virginm.net) (Ping
timeout: 186 seconds)
L783[11:33:52] <tterrag> why is that even
coded in...
L784[11:34:35]
⇨ Joins: agowa338
(~Thunderbi@p54919C5E.dip0.t-ipconnect.de)
L785[11:34:47] <gigaherz> it's probably
some sort of generic "relative time" script
L786[11:35:01]
⇨ Joins: Kaelten
(~Kaelten@li208-254.members.linode.com)
L787[11:35:39] <diesieben07> yep
L788[11:35:47] <diesieben07> they only
have the timestamp in the source
L789[11:36:20] ***
Mine|dreamland is now known as minecreatr
L790[11:38:15] ⇦
Quits: agowa338 (~Thunderbi@p54919C5E.dip0.t-ipconnect.de) (Ping
timeout: 198 seconds)
L791[11:39:35]
⇨ Joins: McJty
(~jorrit@94-225-203-206.access.telenet.be)
L792[11:41:46]
⇨ Joins: agowa338
(~Thunderbi@p54919C5E.dip0.t-ipconnect.de)
L794[11:42:38] <diesieben07> wow did they
just change the font at github?
L795[11:43:05] <PaleoCrafter> hm?
L796[11:43:15] <diesieben07> it's now
Segoe UI for me
L797[11:43:19] <gigaherz> hmm looks fine
here
L798[11:43:22] <gigaherz> let me force
refresh
L799[11:43:28] <diesieben07> it wasn't 5
seconds ago
L801[11:43:56] <PaleoCrafter> Helvetica
Neue for me
L802[11:44:11] <gigaherz> hmm
L803[11:44:13] <gigaherz> font-family:
Helvetica, arial, nimbussansl, liberationsans, freesans, clean,
sans-serif, "Apple Color Emoji", "Segoe UI
Emoji", "Segoe UI Symbol";
L804[11:44:14] <gigaherz> font-size:
13px;
L805[11:44:18] <gigaherz> that's the CSS
I'm getting
L806[11:44:30] <gigaherz> effective font:
Arial
L808[11:44:42] <PaleoCrafter> they might
be testing stuff on a few users?
L809[11:44:47] <diesieben07>
probably
L810[11:44:49] <diesieben07> i definitely
like it
L811[11:45:05] <gigaherz> yeah AB
testing
L812[11:46:24] <gigaherz> OH
L813[11:46:25] <gigaherz> font-family:
"Helvetica Neue", Helvetica, "Segoe UI", Arial,
freesans, sans-serif, "Apple Color Emoji", "Segoe UI
Emoji", "Segoe UI Symbol";
L814[11:46:29] <gigaherz> on comment
text
L815[11:46:36] <gigaherz> it does have
Segoe UI before Arial
L816[11:46:44] <gigaherz> but for me, it
still chooses Arial?
L817[11:47:19] <diesieben07> i have it
*everywhere* now :P
L818[11:47:50] <diesieben07> font-family:
-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid
Sans", "Helvetica Neue", Arial, sans-serif,
"Apple Color Emoji", "Segoe UI Emoji",
"Segoe UI Symbol";
L819[11:47:52] <gigaherz> hmm
L820[11:48:00] <PaleoCrafter> definitely
different than anything I see
L821[11:48:01] <gigaherz> Chrome also
prefers Arial there
L822[11:48:08] <PaleoCrafter> Helvetica
for me xD
L823[11:48:10] <diesieben07> no arial in
there at all :D
L824[11:48:28] <diesieben07> oh right
there at the very end
L825[11:48:30] <gigaherz> but I definitely
have Segoe UI installed
L826[11:48:32] <gigaherz> this is
win10
L827[11:48:32] <gigaherz> XD
L828[11:49:05] <PaleoCrafter> gigaherz,
sure it is Arial?
L829[11:49:32] <gigaherz> Rendered as:
Arial
L830[11:49:48] <gigaherz> and in firefox,
there's a "fonts" tab
L831[11:49:50] <gigaherz> which also says
Arial
L832[11:50:16] <gigaherz> fonts used in
the site:
L833[11:50:27] <gigaherz> Arial Black,
Arial Bold, Arial, tahoma
L834[11:50:31] <PaleoCrafter> oh, yeah, it
actually is Arial for me, too xD
L835[11:51:08] <PaleoCrafter> even when I
force Helvetica Oo
L836[11:51:37] <gigaherz> Helvetica isn't
a thing in windows
L837[11:51:41] <gigaherz> it maps to
Arial
L838[11:52:08] <PaleoCrafter> I have
Helvetica installed :P
L839[11:52:34]
⇨ Joins: Redrield
(~Redrield@178.ip-158-69-202.net)
L840[11:58:06]
⇨ Joins: KGS
(~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L842[11:59:16] <tterrag> anyone have any
clue how this could happen?
L843[12:00:53] <McJty> You're doing the
replacement in the right thread?
L844[12:00:57] <McJty> i.e. not in the
event thread?
L845[12:01:39] ⇦
Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping timeout:
198 seconds)
L846[12:01:50] <tterrag> McJty: er, and
it's causing an NPE?
L847[12:01:56]
⇨ Joins: KGS
(~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L848[12:02:01] ***
kirby|gone is now known as mrkirby153
L849[12:02:30] <McJty> Well when threads
are involved literally anything can happen
L850[12:02:43] <McJty> What is at that
line of code exactly?
L851[12:02:50] <diesieben07> its not
threads :D
L852[12:03:04] <tterrag> McJty: it's
linked further down in the comments
L853[12:03:10] <tterrag> and yes, no
threads involved
L854[12:03:13] <diesieben07> uh is that
really how you are supposed to use @ObjectHolder?
L855[12:04:10] <tterrag> yes?
L856[12:04:13] <tterrag> it's how we used
it in 1.7
L857[12:04:19] <tterrag> worked fine. and
afaik it still works fine in 1.9
L858[12:04:23] <tterrag> as this code
doesn't crash me
L859[12:04:31] <tterrag> his log does show
a failed lookup
L860[12:04:43] <tterrag> but as I pointed
out, both generation methods use the exact same bit of code
L861[12:05:51] ⇦
Quits: Turkey (~Turkey@cpe-24-95-73-99.columbus.res.rr.com) (Ping
timeout: 198 seconds)
L862[12:05:56] <tterrag> aaaand now he
says he's using some werid thing from quark
L863[12:06:04] ⇦
Quits: kimfy (~kimfy@236.5.200.37.customer.cdi.no) (Ping timeout:
201 seconds)
L864[12:06:10] <tterrag> vazkii might be
firing that event in preinit or something
L865[12:13:05]
⇨ Joins: founderio
(~Thunderbi@p200300C4E3C01400A54839A0159DE084.dip0.t-ipconnect.de)
L866[12:15:35]
⇨ Joins: Saucier
(~saucier@p5DC19842.dip0.t-ipconnect.de)
L867[12:18:10]
⇨ Joins: cpup (~cpup@32.218.114.249)
L868[12:21:52] <LatvianModder> Aw man,
initCapabilities itemstack's item can be null? well that sucks..
:/
L869[12:22:30] ⇦
Quits: Saucier (~saucier@p5DC19842.dip0.t-ipconnect.de) (Quit:
Nettalk6 - www.ntalk.de)
L870[12:22:38] <LatvianModder> I wanted
capabilities based on item's metadata, but it looks like I will
have to have a seperate items :/
L871[12:24:32] <diesieben07> ok ok i have
position and a look vector and an AABB. how do I get (in minecraft
terms) the Vector of where the ray hits the AABB?
L872[12:24:49] ⇦
Quits: CoderPuppy (~cpup@32.218.114.41) (Ping timeout: 384
seconds)
L874[12:25:42] <diesieben07> thats c
:(
L875[12:25:51] <PaleoCrafter> lemme
see
L877[12:26:08] <diesieben07> but it always
gives me null
L878[12:26:23] ⇦
Quits: johnnyhostile (~irssi@castlevania.blackholegate.net) (Quit:
leaving)
L880[12:27:10] <tterrag> diesieben07:
can't MC give you the hit location on the AABB? from there isn't it
a simple translation?
L881[12:27:27] <diesieben07> i am asking
how tterrag
L882[12:27:33] <diesieben07> i don't know
:P
L883[12:27:44] <tterrag> look at the block
raytrace code? it passes hitX hitY hitZ so it must calculate those
somehow
L884[12:27:46] <PaleoCrafter> is it an
arbitrary AABB or a block's bounding box?
L885[12:27:59] <diesieben07>
aritrary
L886[12:28:04] <diesieben07> or rather, an
entity's
L887[12:28:35] <diesieben07> i will try
yours paleo :P
L888[12:28:42] <PaleoCrafter> go ahead
:P
L889[12:28:56] <PaleoCrafter> the code
isn't the most beautiful, I didn't bother making it any less C-y
xD
L890[12:30:19] <PaleoCrafter> wait, AABB
has calculateIntercept
L891[12:30:59] <PaleoCrafter> go use that,
diesieben07 :P
L892[12:31:18]
⇨ Joins: johnnyhostile
(~irssi@castlevania.blackholegate.net)
L893[12:31:19] <quadraxis> look at
EntityThrowable.onUpdate() for an example
L894[12:31:20] <diesieben07> that
works?
L895[12:31:46] <PaleoCrafter> it's what
EntityRenderer.getMouseOver uses
L896[12:31:47] <diesieben07>
calculateIntercept(pos, dir)?
L897[12:32:28] <PaleoCrafter> second param
has to be the "end" of the ray
L898[12:32:32] <PaleoCrafter> i.e. dir *
maxDistance
L899[12:32:37] <PaleoCrafter> + pos
L900[12:32:48] <diesieben07> ok
L901[12:33:02] <quadraxis>
calculateIntercept(position, dir.scale(distance)
L902[12:33:45] <quadraxis> oh yeah
position.add(etc)
L903[12:34:17]
⇨ Joins: Emris
(~Miranda@62-178-245-147.cable.dynamic.surfer.at)
L904[12:38:54]
⇨ Joins: CoderPuppy (~cpup@32.218.115.36)
L905[12:40:41] <diesieben07> nope, doesn't
work
L906[12:40:47] <PaleoCrafter>
really?
L907[12:40:47] ⇦
Quits: cpup (~cpup@32.218.114.249) (Ping timeout: 192
seconds)
L908[12:40:47] <diesieben07> either gives
me null or incorrect results.
L909[12:40:51] <diesieben07> sec
L910[12:40:56] <PaleoCrafter> maybe your
input is wrong :P
L911[12:42:32] <diesieben07> wtf my upload
is slow af
L914[12:45:27] <PaleoCrafter> hm---
L915[12:46:20] <PaleoCrafter> btw, why's
that called MovingObjectPosition? :P
L916[12:46:35]
⇨ Joins: theFlaxbeard
(~theFlaxbe@184.97.182.253)
L917[12:46:35] <PaleoCrafter> y u be on
old version
L918[12:46:46] <diesieben07> because this
is a payed job on 1.7.10 :P
L919[12:46:55] ⇦
Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 384
seconds)
L920[12:46:56] <PaleoCrafter> ah :D
L921[12:47:00] <PaleoCrafter> whore!
L922[12:47:06] <diesieben07> shush i need
money for a computer :P
L923[12:47:14] <quadraxis> what's
getPosition() and getLook()?
L924[12:47:45] <Mraof> I don't even know
how I'd go about getting paid to make a mod
L926[12:47:52]
⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L927[12:47:52] <diesieben07> you get asked
:P
L928[12:48:12] <diesieben07> acutally that
might be the problem let me try something
L929[12:48:49] <diesieben07> yeah taht is
broken
L930[12:49:09] <PaleoCrafter> is there no
Entity#getLook in 1.7.10?
L931[12:49:14] <PaleoCrafter> (the one
accepting partial ticks)
L932[12:49:20] <diesieben07> sure, but its
client only
L933[12:49:33] <PaleoCrafter> with the
partial ticks? :P
L934[12:49:39] <diesieben07> yes?
L935[12:49:45] <tterrag> diesieben07:
what's the mod?
L936[12:49:46] <diesieben07> it's always
been client only
L937[12:49:47] <PaleoCrafter> welp, that
has changed then
L938[12:49:47] <tterrag> or is it
sekrit
L940[12:50:26] <diesieben07> i wrote a
whole clan-system backend for them
L941[12:50:35] <tterrag> neat
L942[12:51:14] <diesieben07> wheee it
works
L943[12:51:19] <diesieben07> thanks
quadraxis for the hint with getPosition
L944[12:51:32] <PaleoCrafter> does their
shop comply to the EULA? :P
L945[12:51:37] <diesieben07> no idea
.D
L946[12:51:49] <diesieben07> never knew
they had one, never played on their servers :P
L947[12:51:50] <tterrag> paid mods are a
grey area in the EULA right now
L948[12:51:58] <tterrag> because of their
most recent stupid change
L949[12:52:08] <PaleoCrafter> well, I
mean, they sell kits of some sort
L950[12:52:13] <diesieben07> really?
L951[12:52:16] <diesieben07> what did they
change?
L952[12:52:17] <PaleoCrafter> doesn't
appear to be purely cosmetic
L953[12:53:04] <diesieben07> yeah
L954[12:53:11] <diesieben07> imma talk to
my guy :D
L956[12:54:12] <tterrag> wait that might
be the wrong post
L957[12:54:46] <diesieben07> yeah i dont
see anything wiht mods in there
L958[12:55:09] <Redrield> I remember that
the enforcement team isn't a fan of plugin developers making their
plugins behind a paywall
L959[12:55:33] <diesieben07> that is
something else :D
L960[12:55:38] <diesieben07> that's not
being payed to make a mod
L962[12:55:55] <tterrag> that's the
one
L963[12:56:06] <Redrield> They're all mods
in mojang's eyes
L964[12:56:47] <diesieben07> Redrield,
what you said is a paywall
L965[12:56:55] <diesieben07> what i am
doing is nto a paywall, the mod is free for everyone
L966[12:56:59] <diesieben07> i am getting
payed to make it
L967[12:57:13] <Redrield> Ah
L968[12:57:17] <diesieben07> tterrag, the
mod does not promote anything :P
L969[12:57:28] <Redrield> They haven't
yelled at plugin devs for doing that
L970[12:57:36] <Redrield> And i've done
that in the past, so there should be no problem
L971[12:57:46] <tterrag> I know
L972[12:57:47] <diesieben07> yeah i don't
see why there would be a problem wiht htat.
L973[12:57:49] <tterrag> that's why I said
grey area
L974[12:57:57] <tterrag> the whole change
is stupid
L975[12:58:22] <Redrield> The whole EULA
is a pile of bs imo
L976[12:58:32] <Redrield> They just make
up arbitrary rules on the spot when they feel like it
L977[12:58:51] <PaleoCrafter> I wasn't
talking about the mods anyways :P
L978[12:59:08] <PaleoCrafter> only about
the server in general, since it has a "store"
L979[13:00:14] <diesieben07> i know
L980[13:00:24] <diesieben07> i just told
him htat he said "yeah i know"
L981[13:00:25] <diesieben07> lol
L982[13:00:47] <PaleoCrafter> just wanted
to make sure everybody is on the same page :P
L983[13:00:48] <tterrag> I mean, what do
they honestly have to be worried about?
L984[13:00:51] <tterrag> a lawsuit?
laughable
L985[13:00:54] <tterrag> and the server
blacklist is only 1.10
L986[13:01:07] <tterrag> so, what
incentive do they have?
L987[13:01:34] <Redrield> There was
actually talk of sueing mojang over this bs on spigot forums
L988[13:01:40] <Redrield> Chances of it
happening are still 0 tho :P
L989[13:02:57] ***
tterrag is now known as tterrag|ZZZzzz
L990[13:03:32] <TehNut> I thought the
server blacklist thing went back to 1.7?
L991[13:04:19] <Redrield> They built it
into netty, so it applies to any version using the updated version
of it
L992[13:04:37] <TehNut> Okay, then yeah
1.7+
L993[13:04:40] <tterrag|ZZZzzz> eh, hadn't
heard of that
L994[13:04:40] <TehNut> Good
L995[13:05:39] ⇦
Quits: Brokkoli (~Brokkoli@p5B23C8DB.dip0.t-ipconnect.de) (Ping
timeout: 190 seconds)
L996[13:07:12] <Redrield> Hm
L997[13:07:26] <Redrield> What are the
rotation values I should put in the JSON file for rendering a
sword?
L998[13:09:45]
⇨ Joins: Zaggy1024
(~Zaggy1024@71-220-52-247.mpls.qwest.net)
L999[13:10:54] <Hunterz> is for 1.8.9 or
1.10 some good guns mod like flans ?
L1000[13:11:25]
⇦ Quits: Katrix
(~Katrix@2a02:fe0:cb10:2420:ecde:8200:ddc0:84e2) (Read error:
Connection reset by peer)
L1001[13:11:38] <Redrield> I just made a
custom sword, and it's showing like a normal item in my hand. I'm
using 1.9
L1002[13:11:45]
⇨ Joins: Brokkoli
(~Brokkoli@p5B23C633.dip0.t-ipconnect.de)
L1003[13:19:39]
⇦ Quits: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net) (Ping timeout:
198 seconds)
L1004[13:20:56]
⇨ Joins: cpup (~cpup@32.218.115.152)
L1005[13:21:44] <PaleoCrafter> Redrield,
look at the values vanilla uses? :P
L1006[13:21:45]
⇨ Joins: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
L1007[13:21:55]
⇨ Joins: Delenas
(~Delenas@2600:1016:b107:a334:c036:97ee:e2a3:b30b)
L1008[13:22:09] <TehNut> Use
item/handheld as your parent model
L1009[13:22:19]
⇦ Quits: CoderPuppy (~cpup@32.218.115.36) (Ping timeout: 190
seconds)
L1010[13:33:14]
⇨ Joins: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net)
L1011[13:34:16]
⇨ Joins: Katrix
(~Katrix@2a02:fe0:cb10:2420:e837:e322:566c:4ee4)
L1012[13:39:02] <gigaherz> oh hey
L1013[13:39:05] <gigaherz> github changed
fonts now
L1014[13:39:10] <gigaherz> I wasn't
seeing the changes before
L1015[13:39:11] <gigaherz> I do now
L1016[13:39:33] <PaleoCrafter> nothing's
changed for me yet :D
L1017[13:39:35]
⇨ Joins: C0rn3j
(webchat@157.191.broadband11.iol.cz)
L1018[13:39:54] <PaleoCrafter> must
slowly be rolling it out
L1019[13:39:56]
⇦ Quits: Jezza (~Jezza@92.206.5.6) (Read error: Connection
reset by peer)
L1020[13:39:57] <gigaherz> PaleoCrafter:
open github.com the front page
L1021[13:40:02] <gigaherz> I assume you
don't usually open it?
L1022[13:40:12] <PaleoCrafter> I do
L1023[13:40:19] <gigaherz> meh then
L1024[13:40:19]
⇨ Joins: Jezza (~Jezza@92.206.5.6)
L1025[13:40:27] <gigaherz> I noticed the
change first when I opened that page
L1026[13:44:29] <LatvianModder> aaa my
eyes
L1027[13:44:50] <LatvianModder> it looked
better before imo
L1028[13:45:13]
⇨ Joins: Drullkus
(~Dru11kus@2601:646:8301:ead3:f0fa:e0f2:c369:41e3)
L1029[13:45:29] <gigaherz> the new font
is a bit thicker
L1030[13:45:32] <gigaherz> it's meh
L1031[13:45:37] <gigaherz> I like
thinner
L1032[13:45:40]
⇦ Quits: alex_6611 (~alex_6611@p5DE793D4.dip0.t-ipconnect.de)
(Ping timeout: 190 seconds)
L1033[13:45:45]
⇨ Joins: Girafi
(~Girafi@0x555178eb.adsl.cybercity.dk)
L1034[13:47:48] <PaleoCrafter> but it's
Segoe UI now, isn't it?
L1035[13:47:52] <gigaherz> yep
L1036[13:48:28] <gigaherz> well
L1037[13:48:30] <gigaherz> the normal
font is ok
L1038[13:48:33] <gigaherz> it's the bold
text
L1039[13:48:42] <gigaherz> "Segoe UI
Semibold" is a bit too bold
L1040[13:48:47]
⇦ Quits: Drullkus
(~Dru11kus@2601:646:8301:ead3:f0fa:e0f2:c369:41e3) (Ping timeout:
192 seconds)
L1041[13:48:53] <PaleoCrafter> I
personally like it more
L1042[13:49:00]
⇨ Joins: raoulvdberge
(uid95673@id-95673.richmond.irccloud.com)
L1043[13:49:08] <gigaherz> I like it
more, when not bold.
L1044[13:49:19] <raoulvdberge> Are there
any examples of rendering items on blocks using models?
L1045[13:49:26] <PaleoCrafter> TiC
L1046[13:49:45] <Redrield> I'm using
DejaVu Sans
L1047[13:49:59] <gigaherz> Redrield: we
are talking about the font used by the github page
L1048[13:50:17] <Redrield> Ah
L1049[13:50:29] <gigaherz> raoulvdberge:
I suppose by "using models" you mean static models,
rather than drawing the item on a TESR?
L1050[13:50:33] <Redrield> Lmao shows how
much attention I pay to IRC when I'm trying to make something else
work
L1051[13:50:37] <raoulvdberge> yes,
gigaherz
L1052[13:55:17] ***
illy is now known as sadilly
L1053[13:55:38] <PaleoCrafter> hm...
kinda want to try a font with ligatures for my code xD
L1054[13:55:46] <PaleoCrafter>
raoulvdberge, as I said, TiC :P
L1055[13:56:00] <raoulvdberge> their
package structure is really weird
L1056[13:56:09] <raoulvdberge> got any
clues where i can find the relevant code?
L1057[13:56:26] <PaleoCrafter> I had a
hard time find it back in the day, too
L1058[13:56:30] <PaleoCrafter> it's a
little weird
L1059[13:56:34] <raoulvdberge> i
mean
L1060[13:56:39] <raoulvdberge> they have
2 pkgs, shared and common
L1061[13:56:41] <raoulvdberge> now what
is the difference
L1062[13:56:42] <raoulvdberge> lol
L1063[13:57:27]
⇦ Quits: Blarghedy (~Blarghedy@50-90-115-148.res.bhn.net)
(Ping timeout: 198 seconds)
L1064[13:59:13] <jackmcbarn>
worldObj.getBlock(x, y, z).isReplaceable(worldObj, x, y, z) <--
that seems really ugly and repetitive. is that the best way to find
if a block is replaceable?
L1065[13:59:41] <gigaherz> given that you
seem to be using some ancient pre-1.8 mc, no
L1066[14:00:01] <jackmcbarn> sadly yes i
am :(
L1067[14:00:06] <jackmcbarn> and what is
the best way then?
L1068[14:00:12] <raoulvdberge> upgrade to
1.10
L1069[14:00:15] <gigaherz> on modern
mc
L1070[14:00:16] <gigaherz> you have
L1071[14:00:17] <raoulvdberge> like
everyone does
L1072[14:00:22] <jackmcbarn> i want to,
believe me
L1073[14:00:24] <gigaherz>
world.getBlockState(pos).isReplaceable()
L1074[14:00:38] <gigaherz> or well
L1075[14:00:42] <gigaherz> I assume it
will be there
L1076[14:00:46] <gigaherz> since
everything else is like that ;p
L1077[14:00:59] <jackmcbarn> so aside
from upgrading, is what i wrote the way i have to do that?
L1078[14:01:06] <gigaherz> yes
L1079[14:02:49] ***
sadilly is now known as illy
L1080[14:11:28] <Delenas> What is
IForgeRegistryEntry.getRegistryType?
L1081[14:14:16] ***
PaleoCrafter is now known as PaleOff
L1082[14:15:29]
⇨ Joins: alex_6611
(~alex_6611@p5DE793D4.dip0.t-ipconnect.de)
L1083[14:16:03]
⇦ Quits: McJty (~jorrit@94-225-203-206.access.telenet.be)
(Quit: Leaving)
L1084[14:17:48]
⇨ Joins: Aroma1997
(~Aroma1997@2604:a880:800:10::168:d001)
L1085[14:19:23]
⇨ Joins: sinkillerj
(~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net)
L1086[14:26:04]
⇨ Joins: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L1087[14:32:06]
⇨ Joins: Intektor
(~Intektor4@p5B2768CF.dip0.t-ipconnect.de)
L1088[14:32:19]
⇦ Quits: Samario
(~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Ping
timeout: 384 seconds)
L1089[14:32:56] <Intektor> id like to
draw lines around the sides of the item a player is holding, Im
using layerRenderer, how do I get the model of the item the player
is holding?
L1090[14:45:04] ***
PaleOff is now known as PaleoCrafter
L1091[14:51:09] <mort> hey
L1092[14:52:17] <mort> back in 1.8, last
time I was playing with modding, TileEntities had a method called
update which was ran every tick. Where is that now?
L1093[14:55:04] <diesieben07> mort, TEs
are non-ticking by default for performance. if you want tick
updates, implement ITickable (not the one from the client
package)
L1094[14:55:39] <mort> alright, that
makes sense. Thanks
L1096[15:03:14]
⇨ Joins: Samario
(~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L1097[15:03:22]
⇨ Joins: MikrySoft
(~MikrySoft@89-76-18-43.dynamic.chello.pl)
L1098[15:04:09]
⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Remote host
closed the connection)
L1100[15:08:36]
⇦ Quits: alex_6611 (~alex_6611@p5DE793D4.dip0.t-ipconnect.de)
(Ping timeout: 201 seconds)
L1101[15:08:56] <LexManos>
tterrag|ZZZzzz, you figure out shrink?
L1102[15:10:47] ***
minecreatr is now known as Mine|away
L1103[15:11:17]
⇦ Quits: theFlaxbeard (~theFlaxbe@184.97.182.253) (Ping
timeout: 186 seconds)
L1104[15:13:37] ***
PaleoCrafter is now known as PaleOff
L1105[15:14:46] <workshopcraft>
!topic
L1106[15:14:49]
⇨ Joins: theFlaxbeard
(~theFlaxbe@184.97.219.188)
L1107[15:15:01] <workshopcraft> !topic
#minecraftforge
L1108[15:15:05] <workshopcraft>
>.<
L1109[15:15:09] <workshopcraft> why
L1110[15:15:11] <Wuppy> isn't it
/topic?
L1111[15:15:17] <workshopcraft> i've been
spoiled i think
L1112[15:15:20]
⇦ Quits: theFlaxbeard (~theFlaxbe@184.97.219.188) (Killed
(NickServ (GHOST command used by
theFlaxbeard2!~theFlaxbe@184.97.220.173)))
L1113[15:15:27] <workshopcraft> that
would be it Wuppy
L1114[15:15:28] <Wuppy> it is :)
L1115[15:16:23] <Wuppy> wow... catching
pokemon is really tiring
L1116[15:16:29] <workshopcraft> lol
L1117[15:16:33] <workshopcraft> gotta
burn them all
L1118[15:16:44] <Wuppy> spend 2 and a
half hours walking around town today :P
L1119[15:17:28] <workshopcraft> thats
about 2 hours 20 minuites more than my back can take before i'm in
pain
L1120[15:17:43] <workshopcraft> and yet,
on friday i won a strength competition at my sons fair :P
L1121[15:17:43] <Wuppy> and tomorrow I'll
probably be joining a pokemon go pub crawl which is supported by 3
clubs and I expect about 200 people to come already xD
L1122[15:17:50] <workshopcraft> lol
L1123[15:17:55] <workshopcraft> thats
crazy
L1124[15:17:57] <Wuppy> that's too bad
:V
L1125[15:18:09] <Wuppy> yeah, it's crazy,
but also awesome :)
L1126[15:18:53] <Wuppy> I've heard a ton
of stories already of people making friends and even getting dates
from playing it
L1127[15:19:04] <Wuppy> and I can totally
understand after today, met a ton of cool people :
L1128[15:21:43]
⇦ Quits: covers1624_
(~covers162@ppp122-232-6.static.internode.on.net) (Ping timeout:
192 seconds)
L1129[15:22:06] <workshopcraft> tis a
shame i have absolutely no interest in the game >.<
L1130[15:24:00]
⇦ Parts: Aroma1997 (~Aroma1997@2604:a880:800:10::168:d001)
())
L1131[15:26:08]
⇦ Quits: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
(Ping timeout: 186 seconds)
L1132[15:28:48]
⇨ Joins: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L1133[15:29:05] <workshopcraft> hmm
anyone know the best way to bake text so i'm not redrawing it every
frame for these barrels. trying to optimise >.<
L1134[15:29:37] ***
helinus is now known as helinus|off
L1135[15:30:39] <workshopcraft>
apparently drawing the item, json model and a floating number using
the font renderer is causing a 40 fps drop for people just looking
at them >.<
L1136[15:36:15] <gigaherz> bake them into
the model
L1137[15:36:21] <gigaherz> and only ask
for a re-render if the number changes
L1138[15:38:33]
⇨ Joins: kimfy
(~kimfy@236.5.200.37.customer.cdi.no)
L1140[15:44:32] <mort> is there a faster
way to see the effect of a change without closing minecraft and
running `gradle runClient` again?
L1141[15:44:37] <mort> not using an
IDE
L1143[15:45:37] <diesieben07> mort,
faster way: use an IDE :P
L1144[15:46:26] <mort> so there's no way
using only the command line and gradle
L1145[15:46:38] <mort> not a big fan of
IDEs
L1146[15:46:41] <diesieben07> well, of
course there is but you would have to replicate what the IDE
does
L1147[15:46:41] <founderio> mort: Check
the keyword "hot code replacement". Not sure if that
would be practical without an IDE
L1148[15:46:50] <diesieben07> i am not
sure how hotswap works under the hood
L1149[15:47:02] <mort> alright
L1150[15:47:25] <LexManos> it works by
having a custom JVM that allows for the IDe to fully manage the
code in memory and prevent/replace the jitted code.
L1151[15:47:30] <LexManos> Not possible
in normal JVM
L1152[15:47:35] <mort> I see.
L1153[15:47:50] <workshopcraft> gigaherz,
where would i find reference on how to do that in 1.10.2?
:>
L1154[15:47:58] <mort> I could always
edit code in vim and switch to an IDE to run it
L1155[15:48:16] <LexManos> If you want
hot swapping, use an IDE
L1156[15:48:20]
⇦ Quits: Intektor (~Intektor4@p5B2768CF.dip0.t-ipconnect.de)
(Quit: Leaving)
L1157[15:48:23] <primetoxinz> ugh, why is
player.getActiveItemStack null on clientside?
L1158[15:48:39] <diesieben07> wat
L1159[15:48:47] <diesieben07> since when
do IDEs use custom JVMs?
L1160[15:49:10] <diesieben07>
primetoxinz, because the client does not need to know
L1161[15:49:10] <LexManos> seince
forever...
L1162[15:49:20] <diesieben07> IntelliJ
sure doesn't.
L1163[15:49:27] <LexManos> last I checked
it does
L1164[15:49:28] <primetoxinz> :(
L1165[15:49:32] <diesieben07> and neither
does eclipse
L1166[15:49:33] <founderio> There are
some custom JVMs specially build that allow hotswapping whole
classes, adding/changing method signatures... But as far as I know,
Eclipse et. al. use "regular" JDK
L1167[15:49:38]
⇦ Quits: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098)
(Quit: ZNC - http://znc.in)
L1168[15:49:38] <LexManos> Eclipse
DEFINITLY does
L1169[15:49:41] <diesieben07> eclipse has
a custom compiler
L1170[15:49:43] <diesieben07> not
JVM
L1171[15:49:43]
⇨ Joins: alekso56
(~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098)
L1172[15:49:48] <raoulvdberge> how does
one code java without an ide
L1173[15:49:54] <diesieben07> notepad++
:D
L1174[15:49:57]
⇦ Quits: Jezza (~Jezza@92.206.5.6) (Ping timeout: 384
seconds)
L1175[15:49:58] <founderio> + javac
L1176[15:49:58] <raoulvdberge> managing
imports is a nightmare without an ide
L1177[15:50:11] <LexManos> Not really,
and lets not go into that tnaget
L1178[15:50:12] <LexManos> point is
L1179[15:50:18] <LexManos> hotswapping is
a IDE feature
L1180[15:50:22] <mort> vim + gradle, or
just vim + javac + java
L1181[15:50:24] <LexManos> use and IDE to
get it
L1182[15:50:33] <mort>
@raoulvdberge
L1183[15:51:00] <founderio> or invest
enough time to build your own hotswapping adapter for vim :P
L1184[15:51:06] <primetoxinz> ok, is
there any good way to get the held itemstack to the client? I need
to render something depending on what item is being held
L1185[15:51:21] <raoulvdberge> yes, mort
?
L1186[15:51:44] <founderio> primetoxinz:
player.getHeldItemStackMainhand / Offhand
L1187[15:51:56] <mort> raoulvdberge: look
two lines above my "@raoulvdberge" :P
L1188[15:51:59] <founderio> if it returns
null, player does not hold an item
L1189[15:52:18] <primetoxinz> dang,
ok
L1190[15:52:19] <primetoxinz>
thanks
L1191[15:52:24] <raoulvdberge> mort: does
vim or gradle have something that handles imports?
L1192[15:52:29] <primetoxinz> didn't
think that'd work
L1193[15:52:32] <mort> yes
L1195[15:52:40] <mort> typing `import
whatever` handles imports
L1196[15:52:45]
⇨ Joins: Jezza (~Jezza@92.206.5.6)
L1197[15:52:45] <diesieben07> so... use
that or an IDE :P
L1198[15:52:51] <raoulvdberge> lol
L1199[15:53:16] <mort> alternatively,
eclim is a plugin which adds a lot of eclipse features to vim
L1200[15:53:16] <raoulvdberge> that is
not what i call handling imports
L1201[15:54:21] <founderio> that's the
perks of using an IDE.. You have to understand the code at some
level to do "managing"
L1202[15:54:33] <founderio> vim, or
Notepad++, don't do this (by default)
L1203[15:56:30]
⇨ Joins: iso2013
(~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L1204[15:57:10]
⇦ Quits: founderio
(~Thunderbi@p200300C4E3C01400A54839A0159DE084.dip0.t-ipconnect.de)
(Quit: founderio)
L1205[15:57:15] <quadraxis> what does the
L: mean on the debug screen?
L1208[15:57:53] <iso2013> quadraxis,
there is no L:
L1209[15:58:46] <gigaherz> [22:48]
(workshopcraft): gigaherz, where would i find reference on how to
do that in 1.10.2? :>
L1210[15:58:55] <gigaherz> hmm I don't
know of any example of that specifically
L1211[15:59:04] <gigaherz> you'd need a
texture with the digits in it
L1212[15:59:25] <gigaherz> you'd need to
use extended blockstates with an unlisted property to hold the
display data (item + quantity)
L1213[15:59:50] <gigaherz> and then you'd
need your own IBakedModel injected which can read the extended
properties
L1214[15:59:59] <gigaherz> and build the
quads
L1216[16:02:10] <gigaherz> ?
L1217[16:02:25] <gigaherz> if you mean
the green and red lines, those indicate the world's axis
L1218[16:02:35] <gigaherz> turn the
camera around and you'll see
L1219[16:02:40] <quadraxis> i mean the
text labels
L1220[16:02:57] <gigaherz> there's plenty
of Ls there
L1221[16:03:35] <gigaherz> oh you mean
the one right there in the middle that is not described
directly
L1222[16:04:45] <quadraxis> yeah the
C/D/L/pC/pU/aB line
L1223[16:04:58] <gigaherz> dunno look at
GuiOverlayDebug
L1224[16:05:03] <quadraxis> hmm ok
L1225[16:05:41]
⇦ Quits: Elec332 (~Elec332@ip5456d4a5.speed.planet.nl) (Ping
timeout: 186 seconds)
L1226[16:07:30]
⇨ Joins: MGR
(~MajGenRel@c-24-62-128-93.hsd1.ma.comcast.net)
L1227[16:07:38] <MGR> So, I'm having an
odd issue
L1229[16:08:26] <quadraxis> ok its light
updates
L1230[16:08:35] <MGR> From what I can
tell, it doesn't even seem to get to Forge loading
L1231[16:08:51]
⇨ Joins: KnightMiner (~KnightMin@68.255.0.211)
L1232[16:09:07] <MGR> I tried deleting
the MultiMC and making a new one, but it doesn't work
L1233[16:09:12] <MGR> My other MultiMC
instance works though
L1234[16:09:29] <LexManos> The fuck are
you using 1.7.10 for?
L1236[16:09:53] <MGR> Here's a mod
list
L1237[16:10:00] ***
MGR was kicked by LexManos (The fuck are you using 1.7.10
for?))
L1238[16:10:08]
⇨ Joins: MGR
(~MajGenRel@c-24-62-128-93.hsd1.ma.comcast.net)
L1239[16:10:13] <MGR> I'm behind on the
times, I know
L1240[16:10:51] <LexManos> You problem-^
Quite literally.
L1241[16:11:01] <MGR> What?
L1242[16:11:06] <LexManos> Update
L1243[16:11:31] <MGR> LOL, I snagged the
wrong OpenComputers version
L1244[16:11:55] ***
MGR was kicked by MineBot (Banned: (2h) Update your
pack.))
L1245[16:12:17]
⇨ Joins: electrolitic
(~electroli@104-184-56-125.lightspeed.cicril.sbcglobal.net)
L1246[16:12:37]
⇦ Quits: TechnicianLP
(~Technic@p4FE56C35.dip0.t-ipconnect.de) (Ping timeout: 384
seconds)
L1247[16:15:49]
⇦ Quits: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Ping timeout: 201
seconds)
L1248[16:18:44]
⇦ Quits: Emris
(~Miranda@62-178-245-147.cable.dynamic.surfer.at) (Read error:
Connection reset by peer)
L1249[16:20:38]
⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout:
195 seconds)
L1250[16:22:11]
⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L1251[16:22:15]
⇦ Quits: agowa338 (~Thunderbi@p54919C5E.dip0.t-ipconnect.de)
(Ping timeout: 384 seconds)
L1252[16:29:42]
⇨ Joins: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L1254[16:32:41] <TehNut> Is that common
or client?
L1255[16:33:26] <gigaherz> Delenas: that
looks nice :)ç
L1256[16:33:27] <gigaherz> -ç
L1257[16:33:57] <gigaherz> what does the
ItemStack constructor arg do?
L1258[16:34:00]
⇦ Quits: iso2013
(~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Quit: Bye
:))
L1259[16:34:00]
⇨ Joins: CoderPuppy (~cpup@32.218.117.231)
L1260[16:34:33] <Delenas> It sets the
owner for the server to serialize.
L1261[16:35:34]
⇦ Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Read
error: Connection reset by peer)
L1262[16:35:40]
⇦ Quits: kimfy (~kimfy@236.5.200.37.customer.cdi.no) (Read
error: Connection reset by peer)
L1263[16:36:05]
⇦ Quits: cpup (~cpup@32.218.115.152) (Ping timeout: 186
seconds)
L1264[16:36:56] <diesieben07> which is
then never used anywhere.
L1265[16:37:01] ***
kroeser is now known as kroeser|away
L1266[16:37:14] <Delenas> Bull. It's used
in serialize to pull values from.
L1267[16:37:27] <Delenas> I merged
getOwner and deserialize.
L1268[16:38:27] <Delenas> Is there a way
for me to set a session key so I don't need to provide my login
when testing dedicated server stuff?
L1269[16:39:11] <diesieben07> and why is
that a method in the provider interface? why isn't it just a
protected field in GuiProviderBase or something?
L1270[16:39:26] <gigaherz> Delenas: set
online mode to false on server.properties
L1271[16:39:30] <diesieben07> if you just
have the IGuiProvider there is nothing meaningful you can do wiht
the owner
L1272[16:39:30] <gigaherz> and just use
the random users
L1273[16:39:41]
⇦ Quits: Lordmau5 (~Lordmau5@vmd13736.contabo.host) (Ping
timeout: 186 seconds)
L1274[16:40:04]
⇦ Quits: Jezza (~Jezza@92.206.5.6) (Quit:
Leaving)
L1275[16:40:09] <gigaherz> I believe
GuiProviderItem isnt' an interface, it's a class that handles the
general case of a gui for an item?
L1276[16:40:19] <diesieben07> yes
L1277[16:40:45] <Delenas> Yes. There
isn't an IGuiProvider anymore, it's GuiProvider.
L1278[16:41:05] <Delenas> Which has an
owner, the object opening the gui.
L1279[16:41:22] <diesieben07> what? I see
IGuiProvider still
L1280[16:41:34] <Delenas> I didn't push
the code yet.
L1281[16:43:20]
⇨ Joins: VikeStep (~VikeStep@101.184.243.180)
L1282[16:46:43] <electrolitic> Dang,
every time I run the minecraft server, I get a
ClassNotFoundException even though the class it's looking for
exists.
L1283[16:46:48] <Delenas> So.. you MUST
add @SideOnly(Side.CLIENT) to the clientElement method.
L1284[16:47:04] <Delenas> If you don't
bad things happen. But it works perfectly on servers now. :3
L1285[16:47:18]
⇦ Quits: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net) (Remote host
closed the connection)
L1286[16:48:04] <workshopcraft> ok i'm
confused
L1287[16:48:05] <heldplayer> Maybe you
could let it return Object and require it be castable to
GuiScreen?
L1288[16:48:12] <electrolitic> Nice, I
have a typo. My favorite.
L1289[16:48:41] <workshopcraft> why is
this barrel lagging so bad when its pretty much a sign + an entity
on the floor in terms of rendering
L1290[16:48:46] <workshopcraft> it must
be lagging else where
L1291[16:50:32] <electrolitic> Is there a
Eula to accept when in a developer environment?
L1292[16:50:50] <mrkirby153> I can't
launch the client. IntelliJ is saying "ClassNotFoundError:
GradleStart"
L1293[16:50:51] <mrkirby153> What do I
do?
L1294[16:50:51]
⇦ Quits: CoderPuppy (~cpup@32.218.117.231) (Ping timeout: 198
seconds)
L1295[16:51:05] <workshopcraft> oh
there's an EULA in the folder electrolitic
L1296[16:51:18] <workshopcraft> its under
/run/
L1297[16:51:19] <electrolitic> Which
one?
L1298[16:51:20] <electrolitic> oh
L1299[16:51:22] <electrolitic>
Thanks!
L1300[16:51:50] <workshopcraft> oh
hell
L1301[16:51:56] <workshopcraft> i know
why its lagging so bad
L1302[16:52:02] <electrolitic> That's
weird, I don't know of a GradleStart file O.o
L1303[16:52:30] <workshopcraft> i'm
afraid i've never used intellij >.<
L1304[16:52:43] <mrkirby153> I think it's
the class that starts the MC client
L1305[16:52:52] <mrkirby153> I'll
re-decompile and we'll see if that fixes it
L1306[16:53:25] <electrolitic> I don't
know if eclipse is better than intellij or the other way.
L1307[16:53:46] <gigaherz>
workshopcraft:
L1308[16:53:49] <workshopcraft> did you
follow the instructions in the doc
L1309[16:53:51] <gigaherz> is the
tileentity tickable?
L1310[16:53:55] <workshopcraft> it is
giga
L1311[16:53:59] <workshopcraft> i'm
calling update
L1312[16:54:08] <gigaherz> do you do any
complex stuff like scanning the world for entities?
L1313[16:54:29] <mrkirby153> Huh, gradle
debugClient still launches MC. Wonder what changed
L1314[16:54:31] <gigaherz> hoppers do,
and they are known to cause lag ;P
L1315[16:54:35] <gigaherz>
alternatively
L1316[16:54:39] <workshopcraft> no, i
call notifyBlockUpdate in update() to keep things synced
L1317[16:54:41] <gigaherz> how many draw
calls are you doing?
L1318[16:54:54] <gigaherz> from the
TESR
L1319[16:55:10]
⇨ Joins: infinitefoxes_
(~infinitef@108.19.80.126)
L1320[16:55:28] <workshopcraft> does that
include all translations and rotations or just draw
L1321[16:55:35] <gigaherz> no just
draw
L1322[16:55:43] <workshopcraft> just
drawing the number and the entity
L1323[16:55:49] <gigaherz> although state
changes are not specifically optimal
L1324[16:56:05] <workshopcraft> the model
is dealt with via the json
L1325[16:56:05] <electrolitic> Do you
just implement ITickable to make a tileentity tickable?
L1326[16:56:10] <gigaherz> but they
shouldn't cause massive lag
L1327[16:56:15] <gigaherz> yes,
electrolitic
L1328[16:56:28] <gigaherz> workshopcraft:
okay let's see
L1329[16:56:30]
⇨ Joins: cpup (~cpup@32.218.118.15)
L1330[16:56:33] <gigaherz> if you disable
the number and entity
L1331[16:56:34] <gigaherz> is the lag
gone?
L1332[16:56:41] <workshopcraft> lets
see
L1333[16:56:43] <gigaherz> as in
L1334[16:56:45] <gigaherz> leave the TESR
enabled
L1335[16:56:48] <gigaherz> but remove the
draws
L1336[16:57:14] <workshopcraft> already
launching ;)
L1337[16:57:21] <Delenas> giga, can
registries not handle generics?
L1338[16:57:40] <gigaherz> hm?
L1339[16:57:50] <Delenas> I was running
into issues with making the owner object in GuiProvider a generic
type. The registry code wasn't having it.
L1340[16:58:02] <workshopcraft> i suspect
calling notify in update once a second will probably speed things
up as well
L1341[16:58:09] <gigaherz> eh dunno
L1342[16:58:17] <gigaherz> but why have
the owner on the parent?
L1343[16:58:31] <gigaherz> just have each
subclass implement its own owner handling as it needs
L1344[16:58:31] <Delenas> super
chains.
L1345[16:58:48] <electrolitic> There's a
net.minecraft.util ITickable and a
net.minecraft.client.renderer.texture ITickable. I'm assuming the
util one is the one to use since the other one sounds like it
changes textures?
L1346[16:58:50] <Delenas> Well.. okay. I
could.
L1347[16:59:09] <gigaherz> yes,
electrolitic
L1348[17:00:18] <Delenas> Hmm. I have run
into a fun little thing.
L1349[17:01:09] <Delenas> Not a horrible
issue and not gamebreaking, but forge will log an issue each time
you open a gui if the gui's registry name has a bad prefix.
L1350[17:03:50] <workshopcraft> eww
L1351[17:04:00] <workshopcraft> its
lagging without the draws
L1352[17:04:04] <workshopcraft> when
looking at the barrel
L1353[17:04:23] <workshopcraft> i wonder
if its the stupid translates and rotates i'm doing
L1354[17:04:59]
⇦ Quits: codahq (~codahq@c-73-65-219-228.hsd1.ut.comcast.net)
(Ping timeout: 190 seconds)
L1355[17:05:37] <Delenas> ......
L1356[17:05:48] <Delenas> Caused by:
java.lang.NoClassDefFoundError:
net/minecraft/client/entity/EntityPlayerSP
L1357[17:05:49] <Delenas> at
net.minecraftforge.gui.ForgeGuiHandler.openGuiRemote(ForgeGuiHandler.java:42)
~[ForgeGuiHandler.class:?]
L1358[17:05:54]
⇦ Quits: Samario
(~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Read
error: Connection reset by peer)
L1359[17:06:05] <Delenas> There is no
reference to EntityPlayerSP. Anywhere. >.>
L1360[17:06:40] <diesieben07> but to a
different client only class
L1361[17:06:43] <workshopcraft> o.O
L1362[17:06:56] <workshopcraft>
net.minecraft.client.entity
L1363[17:07:02] <workshopcraft> it says
it in the error :P
L1364[17:07:34] <diesieben07> this is due
to how @SideOnly works in dev
L1365[17:07:37] <diesieben07> i
think
L1366[17:11:52] <workshopcraft> removed a
translate per draw
L1367[17:12:09] <Delenas> How the hell
does IGuiHandler work then?
L1368[17:12:24] <workshopcraft> you've
registered a gui
L1369[17:13:46] <gigaherz> Delenas: I
believe someone mentioned here, the server sends a packet wit hthe
client-side handler class name, and then forge instantiates this
class and runs the client method from it?
L1370[17:14:01] <workshopcraft> and there
goes a rotation per draw cycle
L1371[17:14:12] <diesieben07> gigaherz,
what?? there is no such thing in forge
L1372[17:14:24] <gigaherz> hm?
L1373[17:14:25] ***
manmaed is now known as manmaed|AFK
L1374[17:14:30] <gigaherz> do I remember
wrongly?
L1375[17:14:38] <Delenas> Hmm.
L1376[17:14:38] <diesieben07> for
IGuiHandler it just sends the ID
L1377[17:15:04] <gigaherz> then I have no
idea what that sentence referred to
L1378[17:15:09] <diesieben07> and to get
to the IGUiHandler ont he other side: every mod has a "network
ID"
L1379[17:15:31]
⇦ Quits: ecx (~ecx@nitti.boxen.spaulding.im) (Ping timeout:
384 seconds)
L1380[17:15:54] <diesieben07> although it
uses the modID now... why? idk
L1381[17:17:51]
⇦ Quits: cpup (~cpup@32.218.118.15) (Ping timeout: 198
seconds)
L1382[17:19:24] <LexManos> ... Watching
you guys try and figure this out is entertaining.
L1383[17:19:26] ***
amadornes is now known as amadornes[OFF]
L1384[17:19:41]
⇨ Joins: covers1624
(~covers162@ppp122-232-6.static.internode.on.net)
L1385[17:19:43] <LexManos> I guess its
just a matter of experiance but this is all simple networking stuff
to me :/
L1386[17:19:58] <workshopcraft> Lex :
every forge update ever? :P
L1387[17:20:19] <workshopcraft> there's a
meme there >.>
L1388[17:21:18] <LexManos> Not talking
about the update, that is supid simple.
L1389[17:21:42] <LexManos> Talking about
the guy who is trying to re-write the gui shit when its not needed
because he obviously dont understand how things work or why they
work the way they do.
L1390[17:21:46] ***
mezz_ is now known as mezz
L1391[17:21:46]
⇨ Joins: cpup (~cpup@32.218.118.76)
L1392[17:21:56] <LexManos> Protip:
EVERYTHING in forge has reason for existing and being implemented
the way it is.
L1393[17:22:06] <workshopcraft> i dig
thru minecraft to code to work everything out for the most
part
L1394[17:22:22] <workshopcraft> then
someone asks me why i'm doing it this way, there's a easy way in
forge :P
L1395[17:22:59] <Redrield> Someone
earlier today was looking for modding support in the spigot
IRC
L1396[17:23:04] <Redrield> And they were
using raw MCP
L1397[17:23:06] <Redrield> like
mkat
L1398[17:23:26] <workshopcraft> then i
implement capabilities in my barrels and i get other modders
frustrated that *i* am trying to force them to implement
capabilities in their mod :P
L1399[17:23:46] <workshopcraft>
>.<
L1400[17:23:48] <gigaherz> Redrield: they
don't want to be bound to forge, that means they can release on
their own schedule and such
L1401[17:24:10] <gigaherz> workshopcraft:
fuck the other modders then ;P
L1402[17:24:14] <workshopcraft> lol
L1403[17:24:19] <workshopcraft> but i
WANT their mods to work with mine :P
L1404[17:24:22] <gigaherz> if they don't
use IItemHandlers, they don't reserve you giving a fuck about
that
L1405[17:24:22] <gigaherz> XD
L1406[17:24:32] <gigaherz> deserve*
L1407[17:24:36] <workshopcraft> i didn't
realise i was implementing stuff not everyone was ready to accept
:P
L1408[17:24:39] <Redrield> Isn't that way
more difficult tho?
L1409[17:24:42] <gigaherz> wat
L1410[17:24:46] <gigaherz> there's people
who's still in deanial
L1411[17:24:49] <gigaherz> over any mc
newer than 1.7.10
L1412[17:24:54] <Redrield> Don't they
need to do some shit like deleting the META-INF like the old days?
Or am I wrong about that
L1413[17:24:55] <workshopcraft>
capabilities are really nice once you understand them
L1414[17:24:56] <gigaherz> ofc some
people will reject capabilities
L1415[17:25:07] <gigaherz> simply because
it causes them to spend a few hours changing their code
L1416[17:25:12] <gigaherz> or
worse!
L1417[17:25:15] <gigaherz> learning a new
concept!
L1418[17:25:42] <workshopcraft> i should
see if said mod author has released an update in last couple of
days
L1419[17:25:45] <gigaherz> Redrield: not
necessarily, they can just have their own process
L1420[17:25:52] <gigaherz> similarly to
how FML does it in forge
L1421[17:26:10] <TehNut> Or you could
cheat and wrap your IInventory which takes all of 5 minutes
L1422[17:26:17] <Redrield> ah
L1423[17:26:30] <TehNut> Not that that's
a good thing, but it's better than ignoring caps all together
L1424[17:26:38] <workshopcraft> yeah, see
i COULDN'T implement my barrels as IInventory
L1425[17:26:45] <electrolitic> When you
set the CreativeTab of a Block, will it work? If it does, what
happens when you set a CreativeTab for both the Block and the Item
version of it?
L1426[17:26:47] <workshopcraft> but
capabilities behave nicely
L1427[17:27:13] <workshopcraft>
eugh
L1428[17:27:18] <workshopcraft> no
updates since may 27th
L1429[17:27:24] <workshopcraft> that....
is freaking lame
L1430[17:27:31] <gigaherz> electrolitic:
the block has no meaning for creative tabs
L1431[17:27:37] <gigaherz> it's the
ItemBlock that forwards the calls
L1432[17:27:46] <gigaherz> so if you
don't have an ItemBlock registered for the block
L1433[17:27:50] <gigaherz> it will be
meaningless
L1434[17:27:58] <gigaherz> if you do have
an ItemBlock, then yes, it would work
L1435[17:28:00] ***
kroeser|away is now known as kroeser
L1436[17:28:13] <workshopcraft> chances
are it would just appear twice in the creative tab right gigaherz
?
L1437[17:28:38] <electrolitic> Ah. Is it
pointless to have a class for the Block and a class for the Item
rather than Having just a class for the Block and making an
ItemBlock out of it?
L1438[17:28:44] <gigaherz> well if you
have an ItemBlock AND an Item
L1439[17:28:52] <gigaherz> then yes it
may end up being there twice
L1440[17:29:01] <gigaherz> but then if
you have a non-ItemBlock item for it
L1441[17:29:10] <gigaherz> may as well
just NOT have the itemblock
L1442[17:29:11] <LexManos> giga: There is
no excuse for writing a mod using MCP.
L1443[17:29:15] <Delenas> Lex, I'm
rewriting this so mods don't have to send custom packets to add
additional information about opening a gui.
L1444[17:29:47] <gigaherz> I'm not trying
to excuse them
L1445[17:29:49]
⇨ Joins: CoderPuppy (~cpup@32.218.118.141)
L1446[17:29:51] <electrolitic> Which is
better or more common? Creating a Item class for the Block or just
making an ItemBlock?
L1447[17:29:53] <gigaherz> just saying
waht I believe must be their reasoning
L1448[17:29:59]
⇦ Quits: sinkillerj
(~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net) (Quit:
またね)
L1449[17:30:26] <gigaherz> I personally
believe it's pointless work duplication
L1450[17:30:45] <electrolitic> Creating a
seperate Item class is what you believe is pointless?
L1451[17:30:48] <gigaherz> electrolitic:
depends on your requirements
L1452[17:30:56] <LexManos> Delenas: Its
not a hard issue, but what 'extra data' do you need? The gui system
was designed to be hooked in through the vanilla mechancis with the
information that has.
L1453[17:30:57] <gigaherz> no
electrolitic, spigot
L1454[17:31:19]
⇦ Quits: cpup (~cpup@32.218.118.76) (Ping timeout: 190
seconds)
L1455[17:31:20] <gigaherz> but back to
the items and blocks
L1456[17:31:22] <LexManos> As it sits and
putting it bluntly, your pr is crap and your justification sounds
like you're trying to fix something that isnt broken.
L1457[17:31:25] <electrolitic> Oh. I'm
trying to make a TileEntity, so maybe I'd be better off making a
seperate Item class for it?
L1458[17:31:27] <gigaherz> if your block
is MOSTLY standard
L1459[17:31:38] <gigaherz> then an
ItemBlock will be more effective
L1460[17:31:43] <gigaherz> it will handle
placing for you and such
L1461[17:31:50] <Delenas> A block side, a
drawer ID, a better means of sending an itemstack?
L1462[17:32:04] <gigaherz> nono
L1463[17:32:09] <diesieben07> there is
absolutely NO need for a custom placement item like redstone has
for example
L1464[17:32:11] <gigaherz> a TileEntity
is an optional addon to a block
L1465[17:32:12] <diesieben07> you can use
the ItemBlock
L1466[17:32:28] <gigaherz> it changes
*nothing* about the Block/ItemBlock
L1467[17:32:37] <electrolitic> oh.
L1468[17:32:41] <gigaherz> in fact
L1469[17:32:43] <gigaherz> with
Forge
L1470[17:32:50] <gigaherz> there isn't
even need to do hacks like what doors do
L1471[17:33:02] <gigaherz> since you can
just register different models for in-world, and in-inventory
L1472[17:33:12] <diesieben07> even with
vanilla there is no need :P
L1473[17:33:15] <LexManos> side is an
int
L1474[17:33:18] <LexManos> drawer id is
an int
L1475[17:33:20] <diesieben07> vanill has
no reason to do this shit :D
L1476[17:33:24] <LexManos> why do you
need a itemstack?
L1477[17:33:24] <gigaherz> true
L1478[17:33:30] <gigaherz> I suppose they
keep it for backward compat of IDs
L1479[17:33:38] <diesieben07> yeah
L1480[17:33:45] <gigaherz> same as how
the lit torch is a separate block from the unlit
L1481[17:33:50] <gigaherz> rather than a
POWERED blockstate
L1482[17:33:56] <Cypher121> I don't think
block allows to check where player is facing for stuff like
beds
L1483[17:33:59] <diesieben07> the furnace
is the best :P
L1484[17:34:15] <diesieben07> "No I
will NOT use metadata for this, i will use public static boolean
hacks"
L1485[17:34:31] <gigaherz> Cypher121:
onBlockPlaced in the BLock lets you return a special blockstate
based on facing and such
L1486[17:34:32] <diesieben07> Cypher121,
uh of course? furnaces?
L1487[17:34:48] <diesieben07> plus you
can always make a completely custom ItemBlock class
L1488[17:34:53]
⇦ Quits: r4wk (uid48318@2604:8300:100:200b:6667:4:0:bcbe)
(Quit: Connection closed for inactivity)
L1489[17:35:33] <Cypher121> actually, I
don't remember right now, but I needed custom itemblock for
something related to placing 5x3x2 multiblock
L1490[17:35:46] <Delenas> Lex, I can't
use the position and a drawer ID.
L1491[17:36:11]
⇦ Quits: Redrield (~Redrield@178.ip-158-69-202.net) (Quit:
Install Emacs)
L1492[17:36:19] <Delenas> I only have 4
ints to use.
L1493[17:36:37] <Delenas> So, use a
custom packet? You mean like the one I'm trying to
standardize?
L1495[17:36:53] <LexManos> position is 3
ints
L1496[17:36:57] <LexManos> that leaves
one more
L1497[17:37:04] <gigaherz> Delenas: you
can encode that into the ID
L1498[17:37:13] <gigaherz> you can do
like
L1499[17:37:16] <Delenas> And I need that
for the gui ID. But "Encoding" is shit, so fuck
that.
L1500[17:37:25] ***
kroeser is now known as kroeser|away
L1501[17:37:28] <LexManos> that what
you're basically doing
L1502[17:37:32] <gigaherz> if the top
bits are 00, then the remaining bits are the sub-drawer
L1503[17:37:42] <LexManos> you're just
expanding the 'endcoding' to extra bytes to waste space
L1504[17:38:00] <diesieben07> you can
also use the top 24 bits for Y, since the world is only 255 high
:P
L1505[17:38:02]
⇨ Joins: Redrield
(~Redrield@178.ip-158-69-202.net)
L1506[17:38:04] <Delenas> No, I'm freeing
up a bit.
L1507[17:38:14] <LexManos> No..
L1508[17:38:20] <gigaherz> diesieben07:
barteks2x would hate you for saying that
L1509[17:38:20] <gigaherz> XD
L1510[17:38:27] <LexManos> Adding extra
data == using more space...
L1511[17:38:28] <diesieben07> not my
problem :D
L1512[17:38:46] <Delenas> I'd need to
send the custom packet anyway.
L1513[17:38:47] <diesieben07> i wonder
how he deals with BlockPos#toLong :D
L1514[17:38:52] <LexManos> Why?
L1515[17:39:03] <LexManos> You've yet to
say anything to actually backup your pr
L1516[17:39:09] <LexManos> besides 'I
need to'
L1517[17:39:11] <Delenas> Because not
everything can be encoded into an int!
L1518[17:39:15] <LexManos> Yes it
can!
L1519[17:39:25] <LexManos> Anything that
you actualyl need
L1520[17:40:10]
⇦ Quits: BlueMonster (uid82864@id-82864.tooting.irccloud.com)
(Quit: Connection closed for inactivity)
L1521[17:40:42] <Delenas> So, besides the
fact that items and entities actually remove the two extra ints
(the item could be a bit instead of 4 bytes, even)
L1522[17:40:54]
⇨ Joins: abab9579 (~abab9579@112.166.128.227)
L1523[17:40:59] <Delenas> You're saying
this is useless? This implementation could save network
space.
L1524[17:41:09] <LexManos> Not worth
it
L1525[17:41:22] <Delenas> Easier for
modders to use.
L1526[17:41:26] <Delenas> Always worth
it.
L1527[17:41:30] <LexManos> This is easy
enough as is
L1528[17:41:50] <electrolitic> Dang I
wish I was smart enough to know what people talk about :/
L1529[17:41:52] <gigaherz> for waht it's
worth, I don't think it's useless. maybe unnecessary, but not
useless
L1530[17:41:52] <LexManos> Its not our
fault modders are retarded and think they 'NEED' to do it a
complicated way
L1531[17:42:07] <LexManos> Okay dont get
symatic on me
L1532[17:42:09] <Delenas> Encoding and
decoding data into an int is easy enough for a newbie?
L1533[17:42:18] <LexManos> everything has
a conceivable use.
L1534[17:42:24] <LexManos> But this is
not worth it.
L1535[17:42:32] <LexManos> Yes it
is
L1536[17:42:40]
⇦ Quits: Hgreb (~Hgrebnedn@d8d872a6e.access.telenet.be) (Ping
timeout: 186 seconds)
L1537[17:43:07] <gigaherz> electrolitic:
Delenas is trying to redesign the way we implement GUI handling to
be more flexible, but there have been objections to the different
drafts
L1538[17:43:08] <LexManos> Remember we
assume a basic level of programming knowledge before modding.
L1539[17:43:20] <LexManos> Forge is not
here to hold you hand and tell you what a if statement is
L1540[17:43:29] <Delenas> Bit shifting is
not basic.
L1541[17:43:36] <LexManos> Yes, it
is
L1542[17:43:38] <gigaherz> sorry but yes
it is
L1543[17:43:53] <gigaherz> anyone with
minimal computer education knows bitwise logic
L1544[17:44:09] <LexManos> anyone who
knows basic math can understand bit shifting
L1545[17:44:20] <Redrield> What's bit
shifting?
L1546[17:44:22] <electrolitic> Isn't that
the thing where you line up 0s and 1s or something?
L1547[17:44:31] <Delenas> ^\
L1548[17:44:39] <electrolitic> and if
it's 0 and 1, it's 1. if it's 0 0, it's 0, and 1 1 it's 0?
L1549[17:44:44] <electrolitic> I
think?
L1550[17:45:00] <gigaherz> that's a logic
gate
L1551[17:45:03] <Delenas> Easier.
L1552[17:45:04] <gigaherz> bit shifting
is where
L1553[17:45:15] <LexManos> Thats the
expanded part of bitwise ligic yes, but shifting is the simple
shit:
L1554[17:45:22] <gigaherz> 000100b
<< 2 becomes 010000b
L1555[17:45:31] <electrolitic> Sorry, I
suck at this stuff :/
L1556[17:45:33] <Delenas> You get an
itemstack, you get your tile, you get your entity. No extra data
sent unless it's needed.
L1557[17:45:42] <Redrield> So it just
increments a bit once?
L1558[17:45:43] <LexManos> 'What is the
10's place of 15? Okay 15/10 = 1 whoo we shifted it!
L1559[17:45:56] <Delenas> Packet is as
small as it needs to be for a given gui type- no bigger, no
smaller.
L1560[17:46:04] <gigaherz> it's simply
moving the bits, and adding either 0s or sign bits on the now-empty
spots
L1561[17:46:24] <LexManos> And now you
have dynamic packets that fuck over anything thats reading the
network
L1562[17:46:30] <Redrield> Ah
L1563[17:46:31] <Redrield> mkay
L1564[17:46:32] <LexManos> but thats
fine, not like keeping network compatibility is a issue
L1565[17:46:47]
⇦ Quits: Upthorn
(~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net) (Ping
timeout: 192 seconds)
L1566[17:46:56] <LexManos> Again you're
not fucking defending yourself you're just saything what you think
you NEED.
L1567[17:47:00]
⇨ Joins: Upthorn
(~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net)
L1568[17:47:01] <workshopcraft> wait do
people not get taught bit shifting?
L1569[17:47:07] <Delenas> Another packet
would do the exact same thing.
L1570[17:47:08] <LexManos> And i'm saying
you're wrong, you can do everything you want using the system that
is in place.
L1571[17:47:20] <gigaherz> workshopcraft:
I expect many modders do NOT have basic computer education
L1572[17:47:27] *
workshopcraft had to use bit shifting back in the day before
windows >.<
L1573[17:47:36] <electrolitic>
workshopcraft I don't think so. I never learned it in a java course
I took.
L1574[17:47:40] <LexManos> Again there is
no need for another packet and no its symantically better to define
a seperate packet then re-define the structure of an exisitng
one
L1575[17:47:54] <Redrield> I'm 14
so
L1576[17:47:55] <Delenas> I have an
Associate's in programming. Never taught bit shifting.
L1577[17:47:57] <Redrield> :P
L1578[17:47:58] <gigaherz> boolean logic
is a new concept for many people who start programming because they
want to mod minecraft
L1579[17:48:09] <gigaherz> Redrield:
that's not really an excuse ;P
L1580[17:48:12] <workshopcraft> i suspect
i only cope as well as i do coding mods because i was taught a lot
of low level coding(By todays standards)
L1581[17:48:21] <gigaherz> the first
computer I had was an old Amstrad CPC464
L1582[17:48:25] <LexManos> Del: then you
need to get your money back, bit logic is CE 101.
L1583[17:48:29]
⇦ Quits: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net) (Ping timeout:
186 seconds)
L1584[17:48:30] <gigaherz> I had to
educate myself about programming by reading the printed manual
book
L1585[17:48:34] <workshopcraft> i had the
6128 giga :P
L1586[17:48:41] <gigaherz> and then type
in the BASIC instructions by hand
L1587[17:48:47] <LexManos> However, this
is not a debate on the knowledge people have
L1588[17:48:48] <gigaherz> I was 12 by
then
L1589[17:48:52] <abab9579> Programming
w/o bit shifting? just wow.
L1590[17:48:55] <workshopcraft> fun fact.
the 6128 had more than 128k of ram :P
L1591[17:49:09] <LexManos> We ALL know
the average modder is a ignorant little kid.
L1592[17:49:10] <LatvianModder> Hey,
Basic at 12 here too :D
L1593[17:49:23] <workshopcraft> they
actually had 192k but it was only really safe to write to the first
10 blocks of 16k
L1594[17:49:27]
⇨ Joins: cpup (~cpup@32.218.118.186)
L1595[17:49:28] <LexManos> But thats not
who we care about because they are a dime a dozen and can only make
dirt to diamonds
L1596[17:49:58] <Delenas> This system
also removes the need to remember gui ids and have a switch
statement.
L1597[17:50:02] <Delenas> Does that
matter?
L1598[17:50:13] <LexManos> no because it
does still require that to an extent
L1599[17:50:19] <workshopcraft> why would
you not know your own gui id's?
L1600[17:50:32] <LexManos> it just moves
it to a slower/more costly per-cap system
L1601[17:50:36]
⇨ Joins: Naiten (~Naiten@82.162.1.216)
L1602[17:50:38] <Delenas> People like to
store final ints everywhere.
L1603[17:50:45] <LexManos> So?
L1604[17:50:57] <Delenas> This removes
the need for that.
L1605[17:51:01] <Delenas> Cleaner
code.
L1606[17:51:03] <LatvianModder> Is this
about the new gui system proposal?
L1607[17:51:08] <LexManos> Why do you
need to remove the need for that?
L1608[17:51:18] <LexManos> Your argument
there is a matter of opinion
L1609[17:51:19]
⇦ Quits: CoderPuppy (~cpup@32.218.118.141) (Ping timeout: 190
seconds)
L1610[17:51:29] <LexManos> and when it
comes to this, your opinion doesnt matter, the current system is
clean enough.
L1611[17:51:31] <LatvianModder> Those 3
final its are going to kill performance. RAM useage up to 24
bytes
L1612[17:51:45] <LexManos> Not even that
Latvian
L1613[17:51:56] <LexManos> if the fields
are never used anywhere the ram gets dumped
L1614[17:52:39] <LatvianModder> I have my
own gui system, but its only a little bit tweaked Forge's system.
All it does is adds NBTTagCompound at end of getContainer and
getGuiScreen (or whatever those IGuiHandler methods were)
L1615[17:52:39]
⇦ Quits: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net) (Ping timeout: 190
seconds)
L1616[17:52:45] <Horfius> eventually, but
it's not lazily typed so it does get used at first :P (just
saying)
L1617[17:52:58]
⇨ Joins: Gdubz
(~textual@104-137-103-70.res.bhn.net)
L1619[17:53:05] <gigaherz> ;P
L1620[17:53:18] <LexManos> To an extent
most jvm implementations are good with static memory
management
L1621[17:53:25] <VikeStep> btw lex, I
fixed that ASM issue you found for Malmo with the usage of
deobfuscated names. They never noticed it because their setup steps
to run the mod is to run it with gradlew runClient
L1622[17:53:32] <LexManos> and
considering the fields are inlined at compile time there are
ltierally no references in code
L1623[17:53:48] <LexManos> beyond the
basic structure of the class it has to keep in memory for
reflection
L1624[17:53:55] <VikeStep> so they were
only ever running it in a deobfuscated environment
L1625[17:53:56] <LexManos> but thats only
built when something reflects the class.
L1627[17:54:28] <LexManos> There is a lot
of shit wrong with Malmo
L1628[17:54:34] <LexManos> But im not
gunna get into it.
L1629[17:54:39] <gigaherz> reminds me I
have to remove that switch, it's 100% useless now
L1630[17:54:39] <gigaherz> XD
L1631[17:54:45] <LexManos> The issue
right now is the GUI crap.
L1632[17:55:29] <Delenas> What I'm
gathering is you don't give a damn if anyone tries to change this
because "it's good enough"
L1633[17:55:49] <gigaherz> Delenas: no,
he explained
L1635[17:56:03] <gigaherz> changing that
requires breaking network compatibility with vanilla clients and
such
L1636[17:56:23] <gigaherz> he's just
being mindful about unnecessarily changing the protocol
L1637[17:56:59] <gigaherz> if things
didn't deserve change because they were "good enough", we
may not have the new registryies
L1638[17:57:04] <gigaherz> the capability
system, etc
L1639[17:57:07] <Delenas> Okay, here's an
idea if that's the problem.
L1640[17:57:25] <Delenas> Would it be
possible for me to change this so Forge generates the packet for
you?
L1641[17:57:41] <LexManos> Del you have
ONE job right now
L1642[17:57:56] <gigaherz> my question to
this would be: is it possible to add morebytesto the packet WITHOUT
breaking compatibility with readers that don't expect that extra
data?
L1643[17:58:08] <LexManos> Support the
reasoning behind needing this change/breaking everything.
L1644[17:58:08] <LexManos> You've failed
to do it.
L1645[17:58:53] <Delenas> A gui manager
block accessing another block's gui in a sub-window?
L1646[17:58:55]
⇦ Quits: raoulvdberge
(uid95673@id-95673.richmond.irccloud.com) (Quit: Connection closed
for inactivity)
L1647[17:59:13] <LatvianModder> There are
ways to do it..
L1648[17:59:18] <Delenas> Stupid, but
it's possible. You're kinda putting me on the spot here.
L1649[17:59:34] <LexManos> I'm not
putting you on the spot ive been asking you this question for days
now.
L1650[18:00:45] <Delenas> One of my mods
needed to pass a string to get a gui instance on the client. I
can't send that otherwise.
L1651[18:01:03] <Horfius> Packet?
Extraneous but doable.
L1652[18:01:27] <gigaherz> I'm still
unconvinced that a string was needed ;P
L1653[18:02:05] <LexManos> why do you
need to send a string?
L1654[18:02:25] <Delenas> The whole point
of this wasn't because I needed the string. It wasn't because the
current system is broken- it's not.
L1655[18:02:56] <Delenas> This was to
make gui handing easier on others by enabling extra data and
passing the object they're looking to open a gui for back to
them.
L1656[18:03:35] <Delenas> It removes the
need to perform arcane shenanigans with the ints and just get what
you need, easily.
L1657[18:03:39] <LexManos> Your
definition of easier and mine are vastly different. As it sits your
pr is more complicated.
L1658[18:04:08] <LexManos> Nothing is
arcane, its basic CS.
L1659[18:04:11]
⇨ Joins: iso2013
(~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L1660[18:04:30] <Delenas> I can define a
client-side gui in 24 lines and have an itemstack instance and
everything I need right there to work with.
L1661[18:04:36] <LexManos> Writeup a
spec, not code, of what you're wanting, and why ou think it is
easier.
L1662[18:04:40]
⇨ Joins: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net)
L1663[18:04:51] <LexManos> Again
L1664[18:05:07] <LexManos> WHY THE FUCK
DO YOU NEED A FUCKING ITEMSTACK GOD FUCKING DAMMNET.
L1665[18:05:14] <LexManos> Im SERIOUSLY
getting tired of repeating myself
L1666[18:05:29] <Delenas> I have an
eyedropper item that has a gui to select the color.
L1667[18:05:29] <LexManos> your ONLY
comback right now is "I NEED this extra shit!"
"Why?" "I NEED ITTTTTTTT"
L1668[18:05:49] ***
Delenas was kicked by MineBot (Banned: (6h) Go away and clean your
shit up come back when you can defend yourself.))
L1669[18:06:25] <abab9579> Is there any
safer way to change day length and celestial path?
L1670[18:07:06]
⇨ Joins: CoderPuppy (~cpup@32.218.118.244)
L1671[18:07:19] <Horfius> And that is why
I don't pr anything to MF. Because I'm not sure if it's able to
stand up to community verification. Although this explosion thing
might end up there...
L1672[18:07:20] <LexManos> There are
THOUSANDS of mods out there that use ItemStack based GUIs, simplest
example is Forestry and their bags.
L1673[18:07:35] <LexManos> They all use
the current system and have NO need to send a fucking itemstack to
the fucking client.
L1674[18:08:10] <mezz> I talked to him a
lot, and it led to this PR
L1675[18:08:38] <LexManos> The problem
tho, is now that i've banned him I am going to come off as a 'angry
vengeful asshole who bans you for no reason'
L1676[18:08:39]
⇦ Quits: cpup (~cpup@32.218.118.186) (Ping timeout: 190
seconds)
L1677[18:08:59] <Horfius> Yeh, but that's
your rep anyways so what does it matter?
L1678[18:08:59] <mezz> sometimes you want
extra data when you open a gui. I encode that in to unused bits in
the gui ID. he wanted a better system for encoding the information
that was less of a hack
L1679[18:09:02] <workshopcraft>
great
L1680[18:09:03] <LexManos> The reason is
im sick of repeating myself and having him fucking ignore what im
saying/asking.
L1681[18:09:20]
⇨ Joins: Blarghedy
(~Blarghedy@50-90-115-148.res.bhn.net)
L1682[18:09:26] <LexManos> Thats not what
hes asking tho
L1683[18:09:39] <LexManos> and doing that
has a lot of concequences networking wise
L1684[18:09:54] <LexManos> and he has yet
to explain WHY he needs the extra data
L1685[18:09:55] <mezz> he did a lot of it
the wrong way and needs to redo it yes
L1686[18:10:18] <gigaherz> he was redoing
it
L1687[18:10:22] <mezz> yes
L1688[18:10:27] <LexManos> I've
publically stated that the only legit part of his pr was the extra
data, im not opposed to it
L1689[18:10:28] <gigaherz> we convinced
him to drop the capabilities
L1690[18:10:33] <gigaherz> and use
registrable objects instead
L1691[18:10:33] <Horfius> Well, if it's
not a lot of data or is forcibly limited to like 4k of data, how
bad is one nbt packet when a gui is opened?
L1692[18:10:37] <LexManos> Im oppoed to
all the toehr shit hes saying because he thinks its 'better'
L1693[18:10:40] <gigaherz> but then there
was the whole thing about the "owners"
L1694[18:10:45] <Horfius> 4k is some
random magic number btw
L1695[18:11:03] <LexManos> Why is this
data needed at all?
L1696[18:11:05] <mezz> he has a bed item,
where you can open many guis depending on what part of it you
click. rather than have 1000 gui IDs, he wanted a system where he
could have one gui ID and encode extra info like which part he
clicked.
L1697[18:11:13] <LexManos> GUIs already
have mechanics for syncing data
L1698[18:11:19] <Horfius> That's not my
call. Just spit balling if *someone* wanted it
L1699[18:11:33] <Horfius> Isn't that only
GuiContainers? Or all guis?
L1700[18:11:43] <gigaherz> Horfius: it's
bad because it's no longer the vanilla gui packet
L1701[18:11:49] <Horfius> That is
true
L1702[18:11:52] <LexManos> there is
nothing wrong with having 1000 guids
L1703[18:11:54] *** MineBot sets mode: -b
MGR!*@*
L1704[18:12:03] <mezz> gui data sync is
imperfect, ideally the data should be sent with the gui opening
data
L1705[18:12:08] <LexManos> or more
precisely, 1 id and 1000 subtypes
L1706[18:12:11] <mezz> the data he wanted
to encode would have exceeded the bits in guiID
L1707[18:12:27] <LexManos> so he has more
then 32 million ids?
L1708[18:12:48] <mezz> he has
combinations, which quickly exhaust the bits yes
L1709[18:12:57] <FusionLord> Thats a lot
of Guis ^ just saying
L1710[18:12:58] <mezz> side, subpart, and
block type
L1711[18:13:00] <Horfius> Well, isn't it
a bit hacky and counter-intuitive to use an id to transfer real
data? And wouldn't it be more simple to have a straight-forward
packet instead of the hack?
L1712[18:13:04] <LexManos> Thats one
fucking complicated bed...
L1713[18:13:06] <gigaherz> mezz: hmm I
don't see that
L1714[18:13:14] <gigaherz> given the
x,y,z of the bed
L1715[18:13:14] <mezz> gigaherz, see
what/
L1716[18:13:19] <LexManos> Horfius,
Shutup.
L1717[18:13:20] <gigaherz> you must be
able to enumerate the sub-parts
L1718[18:13:23] <gigaherz> in a
deterministic order
L1719[18:13:27] <gigaherz> that can be
replicated on the client
L1720[18:13:35] <Horfius> Not sure if
that's joking or threatening but okay
L1721[18:13:52] <LexManos> Threatening
because we've explained this many times and Im not in the mood to
do it again
L1722[18:14:04] <electrolitic> How do
people come to understand all this information? Do you just
accumulate the knowledge over time? Do you ask others, use online
resources? Maybe none of the above?
L1723[18:14:15] <gigaherz> electrolitic:
all of the above
L1724[18:14:30] <gigaherz> logic goes to
great lengths
L1725[18:14:38] <Horfius> Well I don't
know lots about the internals of forge, but general CS knowledge
comes in real handy
L1726[18:14:42] <gigaherz> previous
knowledge of basic programming concepts is a requirement
practically
L1727[18:14:59] <LexManos> Forge is made
for Programmers.
L1728[18:15:00] <gigaherz> and experience
in programming makes it all quicker and less painful
L1729[18:15:03] <LexManos> Not script
kiddies
L1730[18:15:09] <mezz> anyway i told him
to just use the bits in gui ID but he wanted a better system. I
already delegate gui stuff to forestry blocks and items, much like
he was doing with the capability, so it could be nice if it was
done better
L1731[18:15:22] <LexManos> We expect a
level of basic knowledge and do not hold you hand while you get
it.
L1732[18:15:26] <FusionLord> Programmer
master race :P
L1733[18:15:42] <electrolitic> This
'basic' level. What determines it?
L1734[18:15:54] <LexManos> mezz, no idea
what you're talking about with the delegation to
blocks/items.
L1735[18:15:57] <Horfius> Um, depends
vastly on yourself and experience?
L1736[18:16:05] <LexManos> his cap system
is just overfucking kill.
L1737[18:16:06] <gigaherz> electrolitic:
depends on what you want to achieve
L1738[18:16:10] <gigaherz> but if you
have to ask what an enum is
L1739[18:16:13] <Horfius> entry level
it's pretty simple, but it can become really complex if you
want
L1740[18:16:18] <mezz> capabilities are
not a good fit for this I agree
L1741[18:16:30] <gigaherz> or how a
static field is different from an instancefield
L1742[18:16:34] <gigaherz> then it's not
enough.
L1743[18:16:56] <LexManos> if you cant
read and understand a stacktrace/error message
L1744[18:17:04] <LexManos> then you're
doing it wrong.
L1745[18:17:11] <mezz> most guis have a
bigass switch statement saying GuiId -> open a gui. I have GuiId
-> Get Tile At x,y,z -> tile opens gui
L1746[18:17:14] <gigaherz> you are not
required know functional programming, although it helps if you ever
encounter lambda expressions on other people's code
L1747[18:17:29] <LexManos> What does this
error mean?????? "RuntimeException: Your config is
invalid!"
L1748[18:17:42] <LexManos> thats
fine
L1749[18:17:54] <Horfius> Heh, but when
it comes to JS errors... god help us all
L1750[18:18:03] <LexManos> if you do
purely locations based stuff then doing a delegation to that is
fine.
L1751[18:18:15] <LexManos> but thats on
your end there is no reason we should have that in Forge.
L1752[18:20:26] <Horfius> Hmm, lex, if
you would implement compute shaders into forge (hypothetical), how
would you manage OpenGL thread contexts for it? I'm thinking a
dedicated worker thread
L1753[18:20:41] <LexManos> I
woudlnt
L1754[18:20:43] <gigaherz> wat XD
L1755[18:20:46] <LexManos> I dont do
rendering
L1756[18:20:47] <abab9579> What's the
best way to expose property on world?
L1757[18:20:52] <LexManos> Thats a
fry|back18aug question
L1758[18:20:54] <gigaherz> abab9579:
details?
L1759[18:20:59] <gigaherz> what do you
mean by "property"?
L1760[18:21:11] <mezz> originally all he
was going to do was add a way to encode extra data into the
FMLNetworkHandler.openGui call. not sure how he got so carried
away
L1761[18:21:17] <gigaherz> Horfius: isn't
thewhole point of compute shaders to avoid having worker threads?
;P
L1762[18:21:18]
⇨ Joins: cpup (~cpup@32.218.119.33)
L1763[18:21:18] <abab9579> It can be for
APIs.
L1764[18:21:18] <Horfius> Well compute
threads aren't necessarily for rendering, moreso general computing
of any data, but they need a opengl context
L1765[18:21:31] <gigaherz> abab9579: I
mean your current needs
L1766[18:21:43] <gigaherz> Minecraft has
the WorldSavedData system
L1767[18:21:46] <Horfius> Well they need
a context to work on and there is only one in the render thread,
which limits the shaders to only rendering calls
L1768[18:21:51] <gigaherz> which can be
used to keep data attached to the world
L1769[18:21:55] <abab9579> WorldSavedData
is too bad to do that..
L1770[18:22:04] <abab9579> I
L1771[18:22:07] <gigaherz> so yeah
L1772[18:22:10] <abab9579> I'm already
using it and
L1773[18:22:12] <gigaherz> if you explain
what you want to achieve
L1774[18:22:15] <abab9579> so
details:
L1775[18:22:18] <gigaherz> maybe we can
give a more accurate answer.
L1776[18:23:15] <abab9579> I have a mod
which implements more realistic celestial dynamics.
L1777[18:23:17]
⇦ Quits: CoderPuppy (~cpup@32.218.118.244) (Ping timeout: 186
seconds)
L1778[18:23:43] <gigaherz> I asusme
that's a fancy way to say sun/moon/starfield animations?
L1779[18:24:03] <Horfius> Like, giga, I
was just looking around and poking around with time it takes to do
some computations, and I think that they could be used (only on
comps with gl4.3 and beyond which is easy to check) to speed up
some bits like explosions or world gen
L1780[18:24:24] <abab9579> Yes, but
actually they are controlled as a whole. (Well, except for
sun)
L1781[18:24:26] <Horfius> Since those can
often be paralleled at points
L1782[18:24:38] <gigaherz> Horfius: hmm,
there's a lot of hazards, though
L1783[18:24:44] <gigaherz> since other
state changes can happen at the same time
L1784[18:25:21] <gigaherz> abab9579: so,
you have "something" that manages the custom drawing of
the sky
L1785[18:25:29] <gigaherz> and you need
to store the data for it?
L1786[18:25:31] <abab9579> Since I change
movement of the Sun, there comes some problems like 1. Day length
changes, 2. Sun has diagonal pathes.
L1787[18:25:37] <abab9579> Yes.
L1788[18:25:39]
⇦ Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping
timeout: 198 seconds)
L1789[18:25:40] <gigaherz> if so, the
WorldsavedData seems ideal.
L1790[18:25:41]
⇨ Joins: raoulvdberge
(uid95673@id-95673.richmond.irccloud.com)
L1791[18:25:46] <gigaherz> you may need
some API to access this data
L1792[18:25:51] <gigaherz> but that'd
just be something custom
L1793[18:26:02] <Horfius> State changes
to what? Any calls to a worker thread would have to block until it
finishes, but I just don't want to recklessly put a context into a
main thread in case something else does.
L1794[18:26:13] <gigaherz> the most
simply api is just like
L1795[18:26:20] <gigaherz>
DataStorage.get(world)
L1796[18:26:49] <gigaherz> returning the
same class that extends WorldSavedData, possibly with a more
abstract interface
L1797[18:26:52] <gigaherz> simple*
L1798[18:27:00] <abab9579> Som do I need
WorldSavedData to expose the data?
L1799[18:27:05] <gigaherz> no
L1800[18:27:10] <gigaherz> you expose the
data however you want
L1801[18:27:26] <gigaherz> WorldSavedData
is just something that you can use as a way to store the data for
persistence
L1802[18:27:27] <abab9579> Well then how
to get the data from World.
L1803[18:27:42] <diesieben07> in your API
have a method getData(World)
L1804[18:27:47] <diesieben07> which then
accesses the WorldSaveDData
L1805[18:27:51] <diesieben07> and returns
it as an API interface
L1806[18:28:03]
⇦ Quits: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net) (Ping timeout:
198 seconds)
L1807[18:28:06] <abab9579> That's...
actually what I'm doing now
L1808[18:28:09] <abab9579> And feeling
very bad
L1810[18:28:15] <diesieben07> that's
perfectly fine
L1811[18:28:15] <Horfius> Why?
L1812[18:28:17] <gigaherz> this is how I
do it
L1813[18:28:30] <diesieben07>
WorldSavedData is the underlying implementation
L1814[18:28:32] <diesieben07> nothing
wrong with it
L1815[18:28:34]
⇨ Joins: Cojo
(~Cojo@cpe-2606-A000-4C46-8D00-106F-76A0-D327-1542.dyn6.twc.com)
L1816[18:28:38] <Horfius> Java does pass
by reference so don't worry about huge object passing, if that's
your concern
L1817[18:28:40] <gigaherz> if you want to
be less "explicit"
L1818[18:28:42] <abab9579> Yes I'm doing
that in that way.
L1819[18:28:44] <gigaherz> you can return
an interface from the get()
L1820[18:28:50] <gigaherz> rather than
the actual class
L1821[18:28:56] <abab9579> But in case
that I need not store anything there.
L1822[18:29:04] <gigaherz> and then the
WorldSavedData will be an implementation detail
L1823[18:29:17] <gigaherz> wait
what?
L1824[18:29:22] <gigaherz> if you don't
have to persist data
L1825[18:29:26] <gigaherz> thenyou don't
even need WorldSavedData
L1826[18:29:28] <gigaherz> it's sortof in
the name
L1827[18:29:32] <gigaherz> that it's
meant for storage
L1828[18:29:47] <gigaherz> however
L1829[18:30:03] <gigaherz> it's still
useful as a way to bind the runtime data with each World
instance
L1830[18:30:41] <gigaherz> (since
presumably each dimension would have different settings regarding
which celestial bodies exist, and where they are)
L1831[18:31:20]
⇦ Quits: workshopcraft
(~Darren@host86-184-160-217.range86-184.btcentralplus.com) (Ping
timeout: 190 seconds)
L1832[18:32:01] <abab9579> Hmm yes, but
currently I have API separate from the data, since there could be
other implementations.
L1833[18:32:24] <gigaherz> yeah so I
presume somewhere you have a getter
L1834[18:32:29] <gigaherz> that has a
World parameter
L1835[18:32:31] <gigaherz> so that you
can do
L1836[18:32:40] <gigaherz>
whatever.getDataFor(theWorld)
L1837[18:32:54] <gigaherz> and
somewhere
L1838[18:33:07] <gigaherz> this method
would eventually have to obtain the data from somewhere
L1839[18:33:22] <gigaherz> which may or
may not be WorldSavedData -- that's an implementation detail
L1840[18:33:27] <gigaherz> all we are
saying is
L1841[18:33:35] <abab9579> But the API
side also need World parameter, then..
L1842[18:33:40] <gigaherz> of
course
L1843[18:33:42] <gigaherz> how
else?
L1844[18:33:54] <gigaherz> unless this
api is client-side only
L1845[18:33:55] <abab9579> Implementation
(ofc) can vary per World.
L1846[18:34:04] <gigaherz> in which case
you can assume Minecraft.theWorld
L1847[18:34:07] <abab9579> (Yes it's not
clientside only)
L1848[18:34:14] <gigaherz> but in any
other situation
L1849[18:34:21] <gigaherz> the api
*needs* the world as a parameter somewhere
L1850[18:34:35] <gigaherz> otherwise you
wouldn't be able to obtain the instance specific to that one
world
L1851[18:34:39] <diesieben07> no matter
if you use WorldSavedData or *fancy storage mechanism that uses
magic pixie dust"
L1852[18:34:59] <gigaherz> you'll need a
function, somewhere
L1853[18:35:03] <gigaherz> that you pass
in the World
L1854[18:35:13] <gigaherz> and it returns
the celestial body manager for that world
L1855[18:35:31] <gigaherz> what this
"celestial body manager" is, does not matter
L1856[18:35:37] <gigaherz> where this
method is, does not matter
L1857[18:35:50] <gigaherz> it's up to you
to decide HOW you implement calling this
L1858[18:35:58]
⇦ Quits: feldim2425
(~feldim242@93-82-87-85.adsl.highway.telekom.at) (Ping timeout: 195
seconds)
L1859[18:36:23]
⇨ Joins: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
L1860[18:36:24] <abab9579> Could you
clarify? I still don't understand how to differ implementation
per-world there, while the API is same.
L1861[18:36:31] <gigaherz> what?
L1862[18:37:03] <abab9579> How to differ
implementation per-world, while the exposing API of them are
same.
L1863[18:37:10] <gigaherz> an
interface?
L1864[18:37:17] <gigaherz> okay let me
dumb it down
L1865[18:37:21] <abab9579> So, how.
L1866[18:37:24] <gigaherz> suppose the
most basic possible implementation
L1867[18:37:30] <abab9579> WorldSavedData
needs the actual class.
L1868[18:37:34] <gigaherz> Map<World,
ICelestialBodyInfo>
L1869[18:37:39] <abab9579> Map?
L1870[18:37:46] <gigaherz> ignore the
WorldSavedData for now
L1871[18:37:51] <abab9579> That would
have high possibility of being broken
L1872[18:37:56] <gigaherz> yes of
course
L1873[18:38:02] <gigaherz> I'm saying it
is the most basic implementation possible
L1874[18:38:05] <gigaherz> it has its
flaws
L1875[18:38:12] <gigaherz> very big
flaws
L1876[18:38:19] <gigaherz> but for the
purpose of this explanation, it would still work
L1877[18:38:21] <abab9579> This is why I
don't like current system.
L1878[18:38:34] <abab9579> How would that
work?
L1879[18:38:39] <gigaherz> okay
L1880[18:38:45] <gigaherz> you want to
track an implementation
L1881[18:38:47] <gigaherz> for each
world
L1882[18:38:49] <gigaherz> so how
else?
L1883[18:38:54] <gigaherz> you store an
implementation, for each world
L1884[18:39:02] <gigaherz> Map<World,
ICelestialBodyInfo> implementations;
L1885[18:39:12] <abab9579> Actually I
know better way, but still I don't like one.
L1886[18:39:14] <gigaherz>
implementations.put(dimension 1, new Implementation1())
L1887[18:39:18]
⇦ Quits: Redrield (~Redrield@178.ip-158-69-202.net) (Quit:
Install Emacs)
L1888[18:39:19] <gigaherz>
implementations.put(dimension 2, new Implementation2())
L1889[18:39:20] <gigaherz> etc
L1890[18:39:24] <gigaherz> and then you
could simply have
L1891[18:39:24]
⇨ Joins: feldim2425
(~feldim242@91-113-90-189.adsl.highway.telekom.at)
L1892[18:39:43] <abab9579> 1. Then it
gets restricted to certain Worlds.
L1893[18:39:48] <gigaherz> class Manager
{ public static Impl get(World w) { return implementations.get(w);
}
L1894[18:39:55] <gigaherz> of
course!
L1895[18:40:11] <abab9579> 2. Need to
consider World Restart, frequent loading/unloading
L1896[18:40:15] <gigaherz> yes
L1897[18:40:19] <gigaherz> that's why oyu
should NOT choose this method
L1898[18:40:36] <gigaherz> I thin kwe are
talking on different levels
L1899[18:41:02] <gigaherz> i'm NOT
explaining something that you can copypaste directly into your
code
L1900[18:41:04] <gigaherz> I'm being
abstract
L1901[18:41:07] <gigaherz> explaining the
concept
L1902[18:41:29]
⇨ Joins: candybar
(~foo@adsl-074-181-053-011.sip.sav.bellsouth.net)
L1903[18:41:31] <abab9579> That makes
sense.
L1904[18:41:35] <gigaherz> okay so
L1905[18:41:39]
⇦ Quits: Brokkoli (~Brokkoli@p5B23C633.dip0.t-ipconnect.de)
(Ping timeout: 384 seconds)
L1906[18:41:43] <gigaherz> your first
"use case"
L1907[18:42:01] <gigaherz> is that
somewhere, someone, will need to obtain an instance of some
interface
L1908[18:42:07] <gigaherz> that
represents your celestial body API
L1909[18:42:16] <gigaherz> for the sake
of this conversation
L1910[18:42:27]
⇨ Joins: Drullkus
(~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L1911[18:42:55] <gigaherz> class
CelestialBodyManager { public static ICelestialBodyProvider
get(World w) { return <TO BE DETERMINED>; } }
L1912[18:43:07] <gigaherz> that's a way
to have this
L1913[18:43:09] <gigaherz> it's not THE
way
L1914[18:43:11] <gigaherz> it's ONE
way
L1915[18:43:14] <gigaherz> there's
others.
L1916[18:43:37] <gigaherz> now you have a
simple minimal way to access this data from outside
L1917[18:44:05] <abab9579> Anyway does
that mean some mappings are needed? okay.
L1918[18:44:11] <gigaherz> use case 2:
you want each world to have its own instance of the data
L1919[18:44:15] <gigaherz> forthat
L1920[18:44:21] <gigaherz> you can use a
Map<> and track loading and unloading
L1921[18:44:28] <gigaherz> or you can use
WorldSavedData, which will track that for you
L1922[18:44:35]
⇨ Joins: Brokkoli
(~Brokkoli@p5B23CF56.dip0.t-ipconnect.de)
L1923[18:44:36] <gigaherz> use case
3:
L1924[18:44:51] <gigaherz> you want each
world type to have a different specific implementation
L1925[18:44:54] <gigaherz> now
L1926[18:45:05] <gigaherz> this can be as
simple as
L1927[18:45:13] <gigaherz> in your
WorldSavedData, have a field of type ICelestialBodyProvider
L1928[18:45:15] <gigaherz> and just store
it there
L1929[18:45:25] <gigaherz> composition
rather than inheritance
L1930[18:45:30] <gigaherz> then
L1931[18:45:38] <gigaherz> you'll want to
be able to allocate providers based on world types
L1932[18:45:45] <gigaherz> so you may
want some sort of registry
L1933[18:45:53] <gigaherz> that maps
world types, to provider factories
L1934[18:46:03] <gigaherz> which
means
L1935[18:46:17] <gigaherz> use case 4:
you may want an API for registering the factories
L1936[18:46:36] <abab9579> I got it,
thankts
L1937[18:46:50] <abab9579> Then another
question:
L1938[18:47:15] <abab9579> When reading
data on WorldSavedData, is there any way to get additional data
about the World?
L1939[18:47:26] <gigaherz> hm?
L1940[18:47:37] <gigaherz> WorldSavedData
gives you the read/write methods for storing NBT
L1941[18:47:40] <gigaherz> anything else
is up to you
L1942[18:48:19] <abab9579> So can't I
have additional data on reading?
L1943[18:48:29] <diesieben07> what do you
mean by that?
L1944[18:48:54] <gigaherz> not on the
readFromNBT function, but you can easily add an initialize() method
with extra parameters?
L1945[18:49:16] <gigaherz> but really I'm
not sure what you are asking for
L1946[18:49:21] <abab9579> Because the
data depends on each providers.
L1947[18:49:22] <gigaherz> what do you
mean by additional data, really?
L1948[18:49:34] <gigaherz> yes so the
provider is responsible for it, then
L1949[18:49:42] <gigaherz> it doesn't
belong on the WorldSavedData instance, does it?
L1950[18:49:48] <abab9579> It can be
provider, or
L1951[18:50:04] <abab9579> Data from
World Type, World Options, etc.
L1952[18:50:06]
⇦ Quits: Matthew (~matthew@matthewprenger.com) (Quit:
Bye)
L1953[18:50:36] <gigaherz> but if you do
what I suggested, and use WorldSavedData just as a way to hold an
instance of a provider
L1954[18:50:45] <gigaherz> then you
wouldn't even need that data on the WorldSavedData
L1955[18:50:54] <gigaherz> you'd just be
able to have the provider be responsible for it
L1956[18:52:22] <abab9579> Then how would
I read the data?
L1957[18:52:50] <abab9579> Just get rid
of WorldSavedData?
L1958[18:53:19]
⇨ Joins: OscarXcore
(uid157529@id-157529.tooting.irccloud.com)
L1959[18:54:11] <gigaherz> wat?
L1960[18:54:17] <gigaherz> why do you
need to get rid of it?
L1961[18:54:43] <abab9579> Since
WorldSavedData#readFromNBT could not accept any other data from
nowhere
L1962[18:55:01] <abab9579> without the
NBTTagCompound provided, and the id of the WorldSavedData.
L1963[18:55:19] <gigaherz> I don't
understand the issue
L1964[18:55:21] <abab9579> But I need it
to be provider-dependent.
L1965[18:55:31] <gigaherz> if you don't
want the data there
L1966[18:55:34] <gigaherz> then don't put
it there
L1967[18:55:41] <gigaherz> it's ok to
leave the data blank
L1968[18:55:51] <gigaherz> it's ok to
ignore anything in it
L1969[18:56:04] <abab9579> Well, I do
need to save data there.
L1970[18:56:08] <gigaherz> then do
save
L1971[18:56:22] <gigaherz> or more
accurately
L1972[18:56:30] <gigaherz> you can give a
chance for the provider to save itself
L1973[18:56:46] <abab9579> I'm saying
that it's impossible.
L1974[18:56:50] <gigaherz> how so?
L1975[18:56:52] <gigaherz> readFromNBT()
{ provider.readFromNBT(); }
L1976[18:56:53] <abab9579> When to set
the provider?
L1977[18:57:07] <abab9579> Since it's
called right after WorldSavedData is constructed.
L1978[18:57:15] <gigaherz> well
L1979[18:57:17] <abab9579> So actually,
that kind of composition is impossible
L1980[18:57:18] <gigaherz> then store it
for later!
L1981[18:57:23] <gigaherz> ;P
L1982[18:57:27] <abab9579> Store
what..?
L1983[18:57:32] <gigaherz> the
NBTTagCompound
L1984[18:57:33] <gigaherz> clone it
L1985[18:57:35] <abab9579> ..;
L1986[18:57:38] <gigaherz> and keep a
copy for later
L1987[18:57:59] <gigaherz> we told you:
you are not required to use WorldSavedData, it'sj ust a tool
L1988[18:58:01] <gigaherz> use it in your
favor
L1989[18:59:02] <abab9579> Then I need to
get rid of WorldSavedData, if I want additional data there.
L1990[19:00:51] <abab9579> This is why I
want something like World Capability, but it's not going to get
merged, anyway.
L1991[19:00:59]
⇦ Quits: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Remote host closed the
connection)
L1992[19:01:17] <gigaherz> uhhh
L1993[19:01:24] <gigaherz> if you look at
the world capabilities
L1994[19:01:29] <gigaherz> you may notice
they use WorldSavedData
L1995[19:01:33] <gigaherz> as a way to
store the capability
L1996[19:03:21] ***
Mine|away is now known as minecreatr
L1997[19:03:24] <abab9579> Yes but it has
hijacks from WorldServer#init method
L1998[19:03:31] <abab9579> Like
Villages..
L1999[19:04:07] <abab9579> Actually
minecraft does it with some hacks there, and this is why they can
stand with the limit I think.
L2000[19:04:41] <gigaherz> well I gave
you an alternative solution: store the NBTTagCompound for later,
and the first time you obtain the WorldSavedData instance
L2001[19:04:50] <gigaherz> you take the
chance to attach the providers and read the NBT
L2002[19:04:57] <gigaherz> and then
discard the temporary NBT that you no longer need
L2003[19:05:21] <gigaherz> I have to
sleep, though, so good night
L2004[19:05:26] *
gigaherz has already delayed it enough
L2005[19:05:34] ***
gigaherz is now known as ghz|afk
L2006[19:08:08] ***
willieaway is now known as williewillus
L2007[19:10:27] <abab9579> So it just
falls to saving NBTTagCompound;
L2008[19:11:53] ***
TehNut is now known as TehNut|Gone
L2009[19:12:14]
⇦ Quits: Nentify (uid14943@id-14943.highgate.irccloud.com)
(Quit: Connection closed for inactivity)
L2010[19:13:25]
⇦ Quits: c233 (~c233@164.40.205.247) (Ping timeout: 201
seconds)
L2011[19:13:39]
⇨ Joins: c233 (~c233@164.40.203.61)
L2012[19:16:02]
⇨ Joins: BBSplat
(bbsplat@tab.completion.provided.by.rcfreak0.com)
L2013[19:24:12]
⇨ Joins: killjoy
(~killjoy@cpe-2606-A000-1118-C151-7DDE-7754-ABF-D7CE.dyn6.twc.com)
L2014[19:24:52]
⇦ Quits: Gdubz (~textual@104-137-103-70.res.bhn.net) (Ping
timeout: 186 seconds)
L2015[19:30:00]
⇦ Quits: quadraxis
(~chatzilla@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
(Quit: ChatZilla 0.9.92 [Firefox
47.0.1/20160623154057])
L2016[19:30:43]
⇨ Joins: Redrield
(~Redrield@178.ip-158-69-202.net)
L2017[19:31:18]
⇦ Quits: Redrield (~Redrield@178.ip-158-69-202.net) (Quit:
Install Emacs)
L2018[19:33:14]
⇨ Joins: Redrield
(~Redrield@178.ip-158-69-202.net)
L2019[19:35:30] <iari> that moment when
you roughly calculate the hours you spent in MC and the number goes
far over 10k...
L2020[19:36:05] <Redrield> I played tons
back in 1.2.5
L2021[19:36:30] <Redrield> Now I only
open my client to either test a plugin or a mod
L2022[19:36:37] <iari> I just wonder how
I could used the roughly 10k hours more productive in life...
L2023[19:36:54] <killjoy> I don't always
open minecraft, but when I do, I afk
L2024[19:37:12] <killjoy> I wish the
server I played on had IdleRPG
L2025[19:37:21] <iari> most of my free
days starting with starting mc and ending with closing mc
L2026[19:37:34] <iari> so many hours
spent...
L2027[19:38:14] <iari> I mean 10k hours.
With that much time I could have learned 1-2 new languages for
example
L2028[19:38:48] <iari> Or deepened my
knowlage of different coding languages
L2029[19:45:13] <Mraof> Hmm
L2030[19:45:51] <iari> thats 5 years
worth of school or working
L2031[19:45:54] <Mraof> Do the textures
have to be part of the block model json?
L2032[19:46:45] <Mraof> Or I guess I
could do something with making a parent
L2033[19:46:56] <Mraof> I'm still not
used to models in 1.8+
L2034[19:49:51]
⇨ Joins: CoderPuppy (~cpup@32.218.112.55)
L2035[19:52:53]
⇦ Quits: cpup (~cpup@32.218.119.33) (Ping timeout: 186
seconds)
L2036[20:02:51]
⇦ Quits: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net) (Ping timeout: 198
seconds)
L2037[20:03:07]
⇨ Joins: cpup (~cpup@32.218.112.99)
L2038[20:03:50]
⇨ Joins: keybounce
(~keybounce@adsl-108-192-89-65.dsl.bkfd14.sbcglobal.net)
L2039[20:05:37]
⇦ Quits: CoderPuppy (~cpup@32.218.112.55) (Ping timeout: 192
seconds)
L2040[20:05:45] <williewillus> what
happened to world.doesBlockHaveSolidTopSurface
L2041[20:07:19] <williewillus> oh nvm its
a simple method
L2042[20:11:42] <williewillus> !gm
func_143043_a
L2043[20:12:11] <williewillus> wat I
mapped that? :P
L2044[20:16:30] <shadowfacts> lol
L2045[20:21:55]
⇨ Joins: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net)
L2046[20:27:58] <williewillus> and that
was the structure system too
L2047[20:28:05] <williewillus> I don't
understand the structure system 0.o
L2048[20:28:11] <williewillus> must have
for a brief moment to map that lol
L2049[20:33:02] <Mraof> Can blockstates
(for rendering) use information from the tileentity of the
block?
L2050[20:35:05] <masa> iari: how did you
calculate that btw?
L2051[20:35:09] <Mraof> Or should I just
use a TESR
L2052[20:35:30] <masa> yes you can use TE
data for blockstates, just gte it in getActualState()
L2053[20:35:34] <masa> *get
L2054[20:35:43] <Mraof> Okay
L2055[20:36:01] <Mraof> I suppose I
should ask if that's a good idea
L2057[20:36:44] <masa> well I would think
that is a very common thing in mods
L2058[20:36:58] <iari> masa, just roughly
with an average value per day under consideration of periods I
didn't played at all
L2059[20:37:18] <Mraof> Okay
L2060[20:37:32] <masa> heh okay
L2061[20:37:41] <masa> I just have this:
http://masa.dy.fi/~masa/testailu/mc_stats_dev/dev_stats_new.php?page=players_combined
L2062[20:37:56] <Mraof> That doesn't look
like it'd be laggy
L2063[20:38:16] <masa> and since I've
only played for a little bit on a couple of servers that weren't
mine, that is only like ~200h off
L2064[20:38:33] <iari> wow thats still a
lot of time
L2065[20:38:37] <masa> but if you would
account for time spent modding/testing, then you can at least
double that amount
L2066[20:39:30] <iari> ok, if I would add
time spent with building my modpack and testing and configuring
stuff I could add around 200-300h to that
L2067[20:40:00] <iari> but good to know
that I'm not the only one that dedicated to MC ^^
L2068[20:40:04] <iari> makes me feel
better
L2069[20:40:29] <masa> haha
L2070[20:41:24]
⇦ Quits: Girafi (~Girafi@0x555178eb.adsl.cybercity.dk) (Read
error: Connection reset by peer)
L2071[20:41:53] <masa> yep, in addition
to playing mc, I have 10 released mods (11th in almost done), and I
have made two ports of overviewer for modded, plus that stats page
(still badly WIP, and it's the second version), plus some server
scripts, a server admin page etc
L2072[20:42:07] <iari> to be fair I had
7-8 years to accomplish this huge number
L2073[20:42:22] <masa> basically almost
all my free time in the past two years has gone to mc
L2074[20:42:26] <masa> and related
things
L2075[20:42:39] <iari> do you have a list
of your mods? cause I don't know your name
L2076[20:42:46]
⇨ Joins: Gdubz
(~gdubz@104-137-103-70.res.bhn.net)
L2077[20:42:54] <iari> I know that
feeling
L2079[20:43:19] <iari> Do you know the
feeling of spending weeks with waking up, starting mc, closing mc,
go to sleep?
L2080[20:43:29] <masa> yep
L2081[20:43:31] <iari> with only breaks
for basic stuff in between?
L2082[20:43:34] <iari> yaaay
L2083[20:43:40] <iari> makes me feel much
better
L2084[20:43:59] <masa> in january this
year when I was doing my 0.5.0 update of ender utilities, almost
all of jnauary was 8-14h per day of staring at code
L2085[20:44:09] <masa> that really took a
toll on my eyes too...
L2086[20:44:21] <Mraof> I sort of burned
out on making Minecraft mods honestly
L2087[20:44:49] <masa> I'm also sort of
getting burned out... at least working on the existing things
L2088[20:45:07] <Mraof> Right now I'm
updating one to 1.10.2 so the person who takes over doesn't have to
deal with updating a mod from 1.7.10 that they aren't familiar
with
L2089[20:45:20] <Mraof> Or familiar with
the code of, rather
L2090[20:45:33] <Mraof> I want to be
working on my game
L2091[20:45:34] <masa> and a ot of my dev
time goes to adjusting/improving/refactoring existing things, which
isn't nearly as interestin gas working on new stuff
L2092[20:45:55]
⇦ Quits: yopu (~yopu@184-89-191-67.res.bhn.net) (Ping
timeout: 201 seconds)
L2093[20:46:55] <masa> but anyway, time
for some sleep, tomorrow I'll install the spyware OS version 10 to
my gaming PC
L2094[20:47:20] <Mraof> My good computer
has only Arch Linux on it
L2095[20:47:21] <iari> good luck
L2096[20:47:25] <masa> and then I need to
re-setup all the things, including all my modding environment
stuff
L2097[20:47:25] <iari> you will need it
xD
L2098[20:47:34] <Mraof> My laptop has
windows 10 on it (and arch linux, dual booting)
L2099[20:47:39] <iari> I fear the moment
I have to leave 7 behind
L2100[20:47:58] <iari> only use this on
gaming pc for gaming, anywhere else Debian
L2101[20:48:21] <masa> my main PC has
only Funtoo on it, but I have to do a clean installation to an SSD
soon, and I'll be switching back to Gentoo this time
L2102[20:48:46] <Mraof> I'm stuck using a
smallish HDD on my desktop right now
L2103[20:48:51] <Mraof> Since my 2TB one
failed
L2104[20:48:56]
⇦ Quits: raoulvdberge
(uid95673@id-95673.richmond.irccloud.com) (Quit: Connection closed
for inactivity)
L2105[20:49:12] <Mraof> I want to get a
SSD, but don't really have enough money to right now
L2106[20:49:22] <iari>
understandable
L2107[20:49:39] <iari> also SSDs have
lower live expectations than classical HDDs
L2108[20:49:50] <masa> I used to hate win
10 with a burning passion, but damn, isn't it just nice in practice
in many ways
L2109[20:49:57]
⇨ Joins: BaronNox_
(~BaronNox@p5B15B972.dip0.t-ipconnect.de)
L2110[20:50:15] <Mraof> From what I saw
SSDs didn't look that bad in regards to lifespan
L2111[20:50:18] <masa> if only they
hadn't made it such a spyware trap and bolted all that bullshit on
it that I don't want
L2112[20:50:19] <iari> I will get
problems with missing DX12 for older windows versions
L2113[20:50:52] <iari> masa, thats the
problem, I already fighting an endless fight to get my firefox to
be safe
L2114[20:50:57] <masa> SSDs with lower
life span? really?
L2115[20:51:24] <masa> aren't they
supposed to last a LOT longer than HDDs
L2116[20:51:28]
⇦ Quits: BaronNox (~BaronNox@pd9e9805e.dip0.t-ipconnect.de)
(Ping timeout: 186 seconds)
L2117[20:51:28] ***
BaronNox_ is now known as BaronNox
L2118[20:51:38] <masa> unless you write
stupids amounts of data to them daily
L2119[20:51:40] <iari> the problem is
that the cells get tired after a certain amount of rewhrites
L2120[20:52:00] <iari> and especially
windows loves to whrite tones of stuff on discs
L2121[20:52:06] <masa> yes, but the
amount that you can write is quite large
L2122[20:52:19] <Mraof> I mean I'm using
Arch Linux on my desktop, not windows
L2123[20:52:36] <iari> my only other SSD
died after 2,5 years using in a homeserver. thats quit decent
L2124[20:52:53] <masa> if I remember
correctly after looking at hdparm output on my server SSD after 1
year of operation, the theoretical life span of it in my use would
be something like 200 years I think
L2125[20:53:35] <Mraof> I think I
concluded I'd probably only have lifespan issues if I decided to
rely on swap on a SSD
L2126[20:53:49] <masa> whereas a
traditional HDD will usually fail some time after 5 years or
so
L2127[20:53:57]
⇦ Quits: MikrySoft (~MikrySoft@89-76-18-43.dynamic.chello.pl)
(Killed (NickServ (GHOST command used by
MikrySoft|2)))
L2128[20:54:02]
⇨ Joins: MikrySoft|2
(~MikrySoft@89-76-18-43.dynamic.chello.pl)
L2129[20:54:11] <iari> *sigh* I really
don't want to update to windows 10, so much stuff for changing and
disabling
L2130[20:54:12] <masa> of constant
use
L2131[20:54:32] <iari> and looking out
for
L2132[20:55:12] <masa> well just wait two
weeks and the free upgrade offer ends and you don't have to upgrade
to win 10 anymore ;D
L2133[20:55:55] <iari> I have to when the
first game comes out which requires DX12
L2134[20:56:13] <masa> just don't play
them :p
L2135[20:56:25] <iari> D:
L2136[20:57:07] <iari> but at what else
should I waste my rare freetime not dedicated to MC?
L2137[20:57:08] <masa> I have it rather
easy, I'm not really interested in any other games except for
minecraft, terraria and similar open world sandbox games, plus a
handful ot others games that I already own
L2138[20:57:44] <KnightMiner> Mostly the
same here, though just when it comes to PC games
L2139[20:57:58] <KnightMiner> My
non-sandbox games are Nintendo :)
L2140[20:58:16] <Mraof> Hmm, open world
sandbox, I wonder if that'll be an accurate term to describe the
game I'm making
L2141[20:58:23] <iari> Nintendo is
great
L2142[20:58:27] <masa> I think I haven't
played any other games than minecraft, terraria and killing floor
(1 & 2) plus a bit of starbound and TIS-100 in at least two
years
L2143[20:58:53] <iari> stardew valley got
me sucked in
L2144[20:59:00] <Mraof> What does a
sandbox game mean exactly?
L2145[20:59:20] <masa> I looked at that,
but it seems too plot driven and meh for me, plus it's
windows-only
L2146[20:59:24] <KnightMiner> Basically,
the player is free to do what they want with no real goal
L2147[20:59:37] <Mraof> I see
L2148[20:59:46] <Mraof> Yeah that'll
probably describe my game
L2149[21:00:22] <Mraof> I'm still
planning parts of it as I make it
L2150[21:00:22] <iari> and then someone
decided: "Hey, lets make an ending for Minecraft"
L2151[21:00:42] <KnightMiner> Well, it
needed something for the causal players to use as a goal
L2152[21:00:59] <KnightMiner> The more
adamant players make their own
L2153[21:01:07] <masa> hehe, such an
ending it was... like "okay, and now back to mining ans
farming"
L2154[21:01:45] <Mraof> I'm guessing most
games don't have planning like "Okay here's a bunch of plans
for the game, and ideas for how this would be
programmed"
L2155[21:01:50] <KnightMiner> Except, you
now can mine and farm with this new yellow stone for
decoration
L2156[21:02:01] <Mraof> But those plans
don't involve gameplay or the goal
L2157[21:02:10] <masa> although to be
fair, I haven't done any mining (specifically for resources anyway)
on my vanilla server for a long time now
L2158[21:02:11] <iari> I understand that
they wanted to make MC more appealing to more causual players, but
wasn't unil then the fact you can freely do whatever you want what
MC was praised for?
L2159[21:02:34] <masa> instead I did a
lot of grinding to get villagers from whom I can buy everything
from :p
L2160[21:02:53] <KnightMiner> Mraof: Most
games, not so much. The planning is instead how to progress through
the game's content, eg, I do this sidequest and it has this
benefit
L2161[21:03:09] <Mraof> I see
L2162[21:03:30] <Mraof> The core idea of
my game is basically generating a story in response to the player's
actions
L2163[21:03:36] <masa> anyway, time for
sleep o/
L2164[21:03:41] <KnightMiner> o/
L2165[21:04:18] <Mraof> Goodnight
L2166[21:07:00] <iari> night
L2167[21:10:53] ***
williewillus is now known as willieaway
L2168[21:17:22]
⇦ Quits: abab9579 (~abab9579@112.166.128.227) (Ping timeout:
201 seconds)
L2169[21:18:19]
⇦ Quits: OscarXcore
(uid157529@id-157529.tooting.irccloud.com) (Quit: Connection closed
for inactivity)
L2170[21:18:24] ***
willieaway is now known as williewillus
L2171[21:18:32] <williewillus> !mh
getFullBlockLightValue
L2172[21:18:51]
⇨ Joins: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L2173[21:20:01] <Redrield> x
L2174[21:20:51]
⇦ Quits: killjoy
(~killjoy@cpe-2606-A000-1118-C151-7DDE-7754-ABF-D7CE.dyn6.twc.com)
(Ping timeout: 198 seconds)
L2175[21:20:53]
⇨ Joins: Ipsis
(~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L2176[21:22:35]
⇦ Quits: Snapples (uid167569@id-167569.highgate.irccloud.com)
(Quit: Connection closed for inactivity)
L2177[21:34:17]
⇦ Quits: Gdubz (~gdubz@104-137-103-70.res.bhn.net) (Quit: I
don't know why I left...)
L2178[21:45:50]
⇦ Quits: iari (~iari___@evana.futhark24.org) (Quit:
Leaving)
L2179[21:50:31] ***
TehNut|Gone is now known as TehNut
L2180[22:23:45] ***
williewillus is now known as willieaway
L2181[22:25:39]
⇦ Quits: KnightMiner (~KnightMin@68.255.0.211) (Read error:
Connection reset by peer)
L2182[22:30:05] ***
TehNut is now known as TehNut|Gone
L2183[22:35:14]
⇨ Joins: McJty
(~jorrit@94-225-203-206.access.telenet.be)
L2184[22:36:24] ***
TehNut|Gone is now known as TehNut
L2185[22:39:02]
⇦ Quits: c233 (~c233@164.40.203.61) (Quit:
Leaving)
L2186[22:42:58]
⇦ Quits: Cojo
(~Cojo@cpe-2606-A000-4C46-8D00-106F-76A0-D327-1542.dyn6.twc.com)
(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.)
L2187[22:44:19]
⇦ Quits: Lathanael|Away
(~Lathanael@p54960225.dip0.t-ipconnect.de) (Ping timeout: 201
seconds)
L2188[22:44:29] ***
Darkhax is now known as Darkhax_AFK
L2189[22:45:53]
⇨ Joins: Lathanael|Away
(~Lathanael@p549611AA.dip0.t-ipconnect.de)
L2190[22:47:46]
⇦ Quits: keybounce
(~keybounce@adsl-108-192-89-65.dsl.bkfd14.sbcglobal.net) (Quit:
colloquy quit: I probably won't see anything til I get
back)
L2191[22:47:56]
⇨ Joins: Cooler (~CoolerExt@117.204.120.172)
L2192[22:52:25]
⇦ Quits: iso2013
(~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Read error:
Connection reset by peer)
L2193[22:52:34]
⇨ Joins: blood_
(unknown@ool-4574115b.dyn.optonline.net)
L2194[23:02:59]
⇦ Quits: Benimatic
(~Benimatic@cblmdm72-241-108-184.buckeyecom.net) (Ping timeout: 190
seconds)
L2195[23:12:22]
⇦ Quits: Naiten (~Naiten@82.162.1.216) (Read error:
Connection reset by peer)
L2196[23:24:41]
⇦ Quits: maxlowry123
(~IceChat9@pool-71-244-115-181.albyny.fios.verizon.net) (Quit:
Always try to be modest, and be proud about it!)
L2197[23:24:46]
⇦ Quits: stiforr (~stiforr@ip72-216-4-156.pn.at.cox.net)
(Read error: Connection reset by peer)
L2198[23:28:04]
⇦ Quits: Cooler (~CoolerExt@117.204.120.172) (Ping timeout:
186 seconds)
L2199[23:28:16]
⇨ Joins: Cooler (~CoolerExt@117.207.163.165)
L2200[23:30:24]
⇦ Quits: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
(Ping timeout: 186 seconds)
L2201[23:36:09] ***
Kolatra is now known as kolatra|away
L2202[23:37:52]
⇦ Quits: McJty (~jorrit@94-225-203-206.access.telenet.be)
(Quit: Leaving)
L2203[23:42:45]
⇨ Joins: npe|office
(~NPExcepti@bps-gw.hrz.tu-chemnitz.de)
L2204[23:52:18]
⇨ Joins: agowa338
(~Thunderbi@p54918717.dip0.t-ipconnect.de)
L2205[23:55:53] ***
tterrag|ZZZzzz is now known as tterrag
L2206[23:57:21] ***
Darkhax_AFK is now known as Darkhax
L2207[23:57:32]
⇨ Joins: codahq
(~codahq@c-73-65-219-228.hsd1.ut.comcast.net)