<<Prev
Next>>
Scroll to Bottom
Stuff goes here
L1[00:08:33] ⇦
Quits: KnightMiner
(~KnightMin@adsl-76-202-213-57.dsl.emhril.sbcglobal.net) (Quit:
Leaving)
L2[00:16:00] ⇨
Joins: Hunterz
(~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
L3[00:19:17] ⇦
Quits: abab9579 (~Abastro@143.248.172.173) (Ping timeout: 201
seconds)
L4[00:23:43] ⇦
Quits: KissOfFate
(~KissOfFat@pool-173-53-76-122.rcmdva.fios.verizon.net) (Quit:
Leaving)
L5[00:43:42] ***
TTFTCUTS is now known as TTFT|Away
L6[00:44:43] ⇨
Joins: TomyLobo
(~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de)
L7[00:49:38] ⇨
Joins: abab9579 (~Abastro@143.248.172.173)
L8[01:08:45] ⇨
Joins: Shawn|i7-Q720M
(~shawn156@c-73-153-76-80.hsd1.co.comcast.net)
L9[01:12:56] ⇦
Quits: TomyLobo (~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de)
(Ping timeout: 201 seconds)
L10[01:18:14] ⇨
Joins: immibis
(~chatzilla@125-237-219-3.jetstream.xtra.co.nz)
L11[01:23:49] ***
afdw2 is now known as afdw
L12[01:27:53] ⇦
Quits: kinggoesgaming (uid23106@id-23106.ealing.irccloud.com)
(Quit: Connection closed for inactivity)
L13[01:29:28] ⇦
Quits: sinkillerj (~sinkiller@nc-67-232-15-97.dhcp.embarqhsd.net)
(Quit: またね)
L14[01:36:18] ⇨
Joins: Hgreb (~Hgrebnedn@d8D872A6E.access.telenet.be)
L15[01:39:20] ⇦
Quits: Doty1154 (~Doty1154@2601:648:8000:134f:18c0:6af4:2fa:7297)
(Read error: Connection reset by peer)
L16[01:44:24] <cjm721> So lycanites mobs
has its own OBJ loader / baker for its EntityLiving
L17[01:52:55] ⇦
Quits: abab9579 (~Abastro@143.248.172.173) (Ping timeout: 186
seconds)
L18[01:55:54] ⇨
Joins: abab9579 (~Abastro@143.248.172.173)
L19[02:00:03] <MCPBot_Reborn> [TEST CSV]
Pushing snapshot_20170529 mappings to Forge Maven.
L20[02:00:07] <MCPBot_Reborn> [TEST CSV]
Maven upload successful for mcp_snapshot-20170529-1.11.zip
(mappings = "snapshot_20170529" in build.gradle).
L21[02:00:17] <MCPBot_Reborn> Semi-live
(every 10 min), Snapshot (daily ~3:00 EST), and Stable (committed)
MCPBot mapping exports can be found here:
http://export.mcpbot.bspk.rs/
L22[02:02:35] ⇨
Joins: LordFokas (LordFokas@znc.theender.net)
L23[02:16:07] ⇨
Joins: gigaherz|work (~gigaherz@84.89.63.25)
L24[02:42:02] ⇨
Joins: Javaschreiber
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de)
L25[02:45:15] ⇨
Joins: Noppes (~Noppes@ip56530f2e.direct-adsl.nl)
L26[02:52:56] ⇦
Quits: abab9579 (~Abastro@143.248.172.173) (Ping timeout: 180
seconds)
L27[02:53:43] ⇨
Joins: abab9579 (~Abastro@143.248.172.173)
L28[03:02:58] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 204
seconds)
L29[03:09:03] ⇨
Joins: TechnicianLP
(~Technicia@p4FE1CB8D.dip0.t-ipconnect.de)
L30[03:17:45] <risux> I'm trying to make a
block with a custom baked model and wavefront model rotate. Got the
blockstates set up, added the rotation to the blockstate json, but
from there I'm not sure how to make it visually rotate.
L31[03:19:57] <gigaherz|work> risux: did
you try passing the IModelState to the IModel#bake of the obj
model?
L32[03:20:04] ⇨
Joins: Searge|mojang
(~Searge@h-85-24-130-18.na.cust.bahnhof.se)
L33[03:20:04] <risux> I've got that,
yes.
L34[03:20:12] <gigaherz|work> and it isn't
working?
L35[03:20:24] <risux> Nope, I must have
done something wrong. I'll grab the code.
L36[03:20:39] ***
diesieben|away is now known as diesieben07
L37[03:22:36] ⇦
Quits: Searge|work (~Searge@h-85-24-130-18.na.cust.bahnhof.se)
(Ping timeout: 204 seconds)
L39[03:22:58] <risux> Also the blockstate
json and IModel are included
L40[03:23:30] <gigaherz|work> hmm that may
not work like that
L41[03:24:21] ⇨
Joins: Seppon (~Noppes@ip56530f2e.direct-adsl.nl)
L42[03:24:34] <gigaherz|work> you may need
to use state.getwhateveritscalled(null)
L43[03:24:39] <gigaherz|work> yo get the
sub-state for the main model
L44[03:25:26] ⇦
Quits: Lathanael|Away (~Lathanael@p54961E77.dip0.t-ipconnect.de)
(Ping timeout: 180 seconds)
L45[03:25:26] ⇦
Quits: auenf (David@CPE-60-229-138-38.lns4.ken.bigpond.net.au)
(Ping timeout: 180 seconds)
L46[03:25:48] ⇨
Joins: Lathanael|Away
(~Lathanael@p54961E77.dip0.t-ipconnect.de)
L47[03:25:56] ⇦
Quits: gabizou (~gabizou@irc.spongepowered.org) (Ping timeout: 180
seconds)
L48[03:26:18] ⇨
Joins: Javaschreiber1
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de)
L49[03:26:24] ⇨
Joins: auenf
(David@cpe-60-229-138-38.lns4.ken.bigpond.net.au)
L50[03:26:26] ⇦
Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Ping timeout:
180 seconds)
L51[03:26:26] ⇦
Quits: Javaschreiber
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de) (Ping timeout:
180 seconds)
L52[03:26:26] ⇦
Quits: Hex (~Hex@four.out.of.five.doctors.recommend.hex.lc) (Ping
timeout: 180 seconds)
L53[03:26:27] ⇦
Quits: Redfoxmoon (~Red@177.92-221-236.customer.lyse.net) (Ping
timeout: 180 seconds)
L54[03:26:27] ⇦
Quits: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de) (Ping
timeout: 180 seconds)
L55[03:26:27] ***
Javaschreiber1 is now known as Javaschreiber
L56[03:26:53] <risux> state being the
IModelState?
L57[03:26:58] <gigaherz|work> yes
L58[03:28:00] <risux> state.apply()? That's
the only method I see in IModelState
L59[03:28:16] <gigaherz|work> I
suppose
L60[03:28:29] <gigaherz|work> ;P
L61[03:28:33] <gigaherz|work> but yes
L62[03:28:37] <gigaherz|work> call apply
with Optional.absent
L63[03:29:02] <gigaherz|work> and pass the
resulting TRSRTransformation to the obj model
L64[03:29:03] ⇨
Joins: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de)
L65[03:29:12] <gigaherz|work> if that
doesn't work
L66[03:29:15] <gigaherz|work> I don't know
what will
L67[03:29:20] <fry> wtf are you suggesting,
gigaherz?
L68[03:29:55] <gigaherz|work> the only
thing I could think of while I'm at work without being able to
check things properly
L69[03:31:00] <gigaherz|work> however on
second thought
L70[03:31:04] <gigaherz|work> that'd be
pointless
L71[03:31:16] <risux> Yeah, it doesnt
appear to be doing anything :P
L72[03:31:18] <gigaherz|work> since the
reasoning in my head just doesn't work
L73[03:32:07] <fry> risux: don't do
unchecked casts, don't wrap exceptions with catch + printStackTrace
:P
L74[03:33:06] <gigaherz|work> I was
thinking somehow the IModelState may be bound to the model, and the
other model isn't able to get the TRSR data from it, but if that
was the case, then calling apply(absent) wouldn't work
either......... so yeah. ;P
L75[03:33:12] <fry> you even do the cast
twice for some reason :P
L76[03:34:04] <gigaherz|work> wait
L77[03:34:06] <gigaherz|work> I see your
problem lol
L78[03:34:40] <gigaherz|work> no wait
L79[03:34:47] <gigaherz|work> it's a
problem ,but not THE problem
L80[03:35:13] <gigaherz|work> you call
getModel, cast to retexturable, call retexture, etc
L81[03:35:14] <fry> nevermind, the cast is
checked, but still, twice :P
L82[03:35:16] <risux> fry, I see the
unchecked cast, but where are you seeing that I cast twice?
o.o
L83[03:35:17] <gigaherz|work> but you never
cache it
L84[03:35:30] <fry> IRetexturableModel
retexturable = (IRetexturableModel) model;
L85[03:35:34] <fry> retexturable =
(IRetexturableModel) retexturable.retexture(textures);
L86[03:35:47] <risux> It has to be cast
there, it returns a standard IModel
L87[03:35:49] <gigaherz|work> so every
single time any block uses your model, it will re-bake
L88[03:36:00] <gigaherz|work> risux: you
don't need the output from that to be cast though
L89[03:36:00] <fry> don't store it in the
same variable? :P
L90[03:36:04] <gigaherz|work> since you
only call bake on it
L91[03:36:33] <fry> yes, you'll rebake on
each call to getQuads, but that shouldn't mean that it won't work
at all
L92[03:36:51] <risux> Oh, I must have
misunderstood that
L93[03:38:50] <gigaherz|work> uhm, wait,
are you using "avp:slope.obj" as the internal identifier
for accepting your custom model? o_O
L94[03:39:05] <gigaherz|work> oh and
L95[03:39:05] ⇨
Joins: Larry1123 (Larry1123@irc.larry1123.net)
L96[03:39:08] <gigaherz|work> your
blockstates file is wrong
L97[03:39:12] <gigaherz|work> that's why it
won't work
L98[03:39:15] <gigaherz|work> not the code,
the blockstates.
L99[03:39:20] <gigaherz|work> in forge
blockstates format
L100[03:39:27] <gigaherz|work> full-string
variants should be in an array
L101[03:39:37] <gigaherz|work>
"facing=north": [{ }]
L102[03:39:44] <gigaherz|work> or
alternatively you can do
L103[03:39:48] <gigaherz|work>
"facing": {
L104[03:39:51] <gigaherz|work>
"north": {},
L105[03:39:53] <fry> step 1: to get the
model for the blockstate variant, use
getModel(ModelResourceLocation("avp:slope",
"facing=north"))
L106[03:39:57] <gigaherz|work>
"east": { "y": ... }
L107[03:40:08] <gigaherz|work> so that's
why the rotations aren't applied
L108[03:40:15] <gigaherz|work> the
variants you are declaring are NOT valid
L109[03:41:08] <fry> step 2: you're baking
obj model with the state from the slope model - decide which
rotations you want to be applied (from slope json, from obj json,
or from both)
L110[03:41:22] <fry> and modify call to
.bake to use the appropriate state instead :)
L111[03:41:59] <risux> Okay, so quite a
bit was wrong. Gonna need a bit to catch up :P
L112[03:43:03] <fry> if you use
ResourceLocation(AliensVsPredator.ID, "block/slope.obj"),
then you'll get to the obj directly, without going through the
blockstate
L113[03:43:17] <fry> which might work if
you put the rotations in the blockstate where you use the slope
model
L114[03:43:35] <risux> So I won't need to
reference the model in the blockstate at all?
L115[03:44:36] <fry> which one? :P
L116[03:44:49] <risux> The json.
L117[03:45:07] <risux> I wont need to
reference slope.obj in the json?
L118[03:45:21] <gigaherz|work> you never
do
L119[03:45:38] <gigaherz|work> the
blockstates json only needs to reference a special resourcelocation
that you use for your custom model
L120[03:45:49] <gigaherz|work> and then
your custom model references the .obj file through
getDependencies
L121[03:47:17] <gigaherz|work> the process
is roughly:
L122[03:47:34] <gigaherz|work> 1. the
model's statemapper references some resourcelocations it will
require as models
L123[03:47:55] <gigaherz|work> 2. the
model loader loads all the required blockstate files and computes
the models from it
L124[03:48:13] <gigaherz|work> 2.1. for
each model getDependencies is called to get the dependencies also
added recursively to the table
L125[03:48:25] <fry> step 1 is MRL and not
just a RL :P
L126[03:48:28] <gigaherz|work> 3. the
model loader bakes each model with the requested variants
L127[03:49:00] <gigaherz|work> so the
key
L128[03:49:21]
⇨ Joins: KGS
(~KGS@h-158-174-9-249.na.cust.bahnhof.se)
L129[03:49:23] <gigaherz|work> is that the
blockstates json has
"model":"yourmod:special/custom/path/to/yourmodel"
(arbitrary name)
L130[03:49:34] <gigaherz|work> and then
your IModel implementation returns the right list of dependants
from getDependencies
L131[03:51:33] <risux> Okay, so then...
specifying "model":"avp:slope.obj" is
correct?
L132[03:51:42] <risux> In the blockstate
json ^
L133[03:54:36] <fry> that would load the
obj model
L134[03:54:41] <fry> and not your Slope
model
L135[03:55:20] <risux> So I just forget
about that and use getDependencies() to get it to load the obj
model?
L137[03:55:35] <risux> Ahhh,
alright.
L138[03:56:02] ⇦
Quits: Javaschreiber
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de) (Quit:
Javaschreiber)
L139[03:57:59] <gigaherz|work> risux: the
model location you use in the blockstates json should match the one
you use in ICustomModelLoader#accepts
L140[03:58:05] <gigaherz|work> which
should NOT end in .obj
L141[03:58:09] <gigaherz|work> since the
OBJ loader handles those
L143[04:00:51] <fry> at least to
REGISTRY.clear on the reload :P
L144[04:00:53] <fry> *do :P
L145[04:00:59] <risux> Fair enough, can do
that
L146[04:01:45] <fry> hmm, although might
not be neccesary
L147[04:02:01] <fry> from looking at the
ModelSlope, you don't store anything there
L148[04:03:30] <gigaherz|work> he should
eventually cache the retextured models, though
L149[04:03:53] <gigaherz|work> the
ModelSlope doesn't really make sense to cache it at all
L150[04:05:51] <risux> I'll definitely
cache them. Just want to fix the rest first :P
L151[04:08:15] ⇦
Quits: abab9579 (~Abastro@143.248.172.173) (Ping timeout: 383
seconds)
L152[04:08:32] <risux> Okay, so now the
obj model doesn't load, which should be a result of my dependencies
being wrong, right? I'm passing an ImmutableSet of a resource
location ("avp", "block/slope.obj")
L153[04:08:42] <risux> Do I not need to
include the file extension?
L154[04:08:53] <fry> doesn't load in what
way?
L155[04:09:39] <risux> Well I mean, it's
invisible, which I gather is a result of having no quads, which
should be a result of the original model I'm copying quads from not
loading.
L156[04:09:59] <risux> So I guess... not
loading during bake()?
L157[04:10:31] <gigaherz|work> errors in
the log?
L158[04:10:34] <gigaherz|work> always look
at the debug log
L159[04:10:43] <gigaherz|work> and
pastebin the log when complaining something isn't working
L160[04:11:49] <risux> Got a ton of errors
there (since im updating a mod). Trying to find anything related to
the slope.
L161[04:13:28] <risux> There doesnt appear
to be any errors related to the slope, but I put a print out in the
bake method and it does not appear to be getting called
L162[04:13:49] <fry> that's why you don't
catch exceptions :P
L163[04:14:00] <fry> or at least handle
them better than .printStackTrace :P
L164[04:14:43] <gigaherz|work> I like to
throw new ReportedException(new CrashReport("Fatal error
loading stuff", originalException));
L165[04:14:48] <gigaherz|work> specially
while developing
L166[04:14:48] <gigaherz|work> ;p
L167[04:15:08] <gigaherz|work> can be
annoying at times, though
L168[04:15:16] <risux> I put the call even
before I catch the exception.
L169[04:15:31] <gigaherz|work> is accepts
getting called?
L170[04:15:33] <gigaherz|work> in your
loader?
L171[04:15:35] <gigaherz|work> if so
L172[04:15:40] <gigaherz|work> is
loadModel getting called?
L173[04:15:48] <fry> step 1: check if
loader.accepts is called :P
L174[04:15:49] <gigaherz|work> if so, is
bake getting called on your IModel?
L175[04:15:56] <fry> step 2: check that it
returns true for something :P
L176[04:16:05] <gigaherz|work> if not, can
you show your current blockstates json?
L177[04:17:58] <risux> accepts() is
getting called, but it's not accepting the slope model.
L178[04:19:01] <fry> what's the name of
the model in the blockstate?
L179[04:20:53] <risux> I don't have a
model specified there. That seems to be the problem. I believe I
was confused back when you said "that would load the obj
model" "and not your Slope model", and so I removed
it... but obviously it needs something
L180[04:21:12] <fry> yes, you need some
model :P
L181[04:21:27] <fry> and for something to
appear in .accepts, it needs to come from a blockstate :P
L182[04:21:40] <risux> So just
"avp:slope" will do?
L184[04:25:34] <risux> Alright, that's
working again
L185[04:31:03] ⇦
Quits: Searge|mojang (~Searge@h-85-24-130-18.na.cust.bahnhof.se)
(Read error: -0x1: UNKNOWN ERROR CODE (0001))
L186[04:33:57]
⇨ Joins: Searge|office
(~Searge@h-85-24-130-18.na.cust.bahnhof.se)
L187[04:36:20]
⇨ Joins: Brokkoli
(~Brokkoli@p5B23CC84.dip0.t-ipconnect.de)
L188[04:45:27] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 200
seconds)
L189[04:56:10]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L190[05:00:29] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 201
seconds)
L191[05:08:03]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L192[05:08:04] ⇦
Quits: Abastro (~Abastro@143.248.189.68) (Read error: Connection
reset by peer)
L193[05:08:09]
⇨ Joins: Abastro (~Abastro@143.248.189.68)
L194[05:08:56] ⇦
Quits: Abastro (~Abastro@143.248.189.68) (Read error: Connection
reset by peer)
L195[05:08:57]
⇨ Joins: abab9579 (~Abastro@143.248.189.68)
L196[05:12:05] ⇦
Quits: abab9579 (~Abastro@143.248.189.68) (Read error: Connection
reset by peer)
L197[05:13:56]
⇨ Joins: h5h77
(~h5h77@ip1f10331f.dynamic.kabel-deutschland.de)
L198[05:16:39] ⇦
Quits: KGS (~KGS@h-158-174-9-249.na.cust.bahnhof.se) (Ping timeout:
186 seconds)
L199[05:26:01] <risux> So back to the
model variants... Do I get these varaints via the bake method in my
IModel? If so, I assume I'll have to pass them into my baked model
in order to determine which one to use based on the
blockstate.
L200[05:26:10] ⇦
Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9fzwswheb2vaxz2.ipv6.telus.net) (Read
error: Connection reset by peer)
L201[05:26:52]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9fzwswheb2vaxz2.ipv6.telus.net)
L203[05:29:07] <gigaherz|work> risux:
nono
L204[05:29:11] <gigaherz|work> each time a
variant is used
L205[05:29:20] <gigaherz|work> you'll get
a new call to bake
L206[05:29:32] <gigaherz|work> so you'll
effectively create one IBakedModel instance for each variant
L207[05:30:59] <risux> Okay, but... how
does the model know which one to use based on the blockstate
then?
L208[05:33:05] ⇦
Quits: Meronat (uid190493@id-190493.highgate.irccloud.com) (Quit:
Connection closed for inactivity)
L209[05:34:58] ⇦
Quits: arehman (~arehman@124.29.237.225) (Ping timeout: 204
seconds)
L210[05:36:44] <gigaherz|work> risux:
what?
L211[05:36:46] <gigaherz|work> you don't
have to know
L212[05:37:30] <gigaherz|work> all the
data from the blockstates file is passed to the IModel through
IRetexturableModel (for the textures settings), IModelCustomData
(for the "custom" block), or in the bake method's
IModelState (for the transforms)
L213[05:38:22] <gigaherz|work> so your
actual IBakedModel should be given all the necessary information to
do its job as quickly as possible
L214[05:38:52] <gigaherz|work> (hence
being baked -- it's meant to be as efficient as possible in that
stage)
L215[05:39:37]
⇨ Joins: Abastro (~Abastro@143.248.189.68)
L216[05:40:25] <Abastro> Overengineering..
=<
L217[05:40:54] <risux> Okay, but the other
guy said I had to get the model for each variant and that's where I
got lost
L218[05:41:30] <risux> (didnt want to ping
him)
L219[05:41:32] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 383
seconds)
L220[05:42:26] <gigaherz|work> you
shouldn't need to worry about variants for the obj model
L221[05:42:58] <risux> How do I get it to
rotate then? o.o
L222[05:43:26] <Abastro> Probably using
TRSRTransformation?
L223[05:43:30] <gigaherz|work> are you
passing the IModelState into the obj's bake method?
L224[05:44:16] <risux> The IModelState
from the bake method in my IModel, yes, I am passing it into the
obj model's bake method.
L225[05:44:17] ⇦
Quits: Alex_hawks
(~Alex_hawk@2001:8003:8572:a900:fd82:8cd1:b9e2:f7ce) (Read error:
Connection reset by peer)
L226[05:44:24] <gigaherz|work> and it's
not working?
L227[05:44:30] <risux> Nope :o
L228[05:44:48] <gigaherz|work> can you do
a full pastebin with your blockstate json, loader, model etc?
L229[05:44:55] <risux> Sure one sec
L230[05:44:56]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L231[05:44:57]
⇨ Joins: Alex_hawks
(~Alex_hawk@2001:8003:8572:a900:fd82:8cd1:b9e2:f7ce)
L232[05:44:57] <gigaherz|work> or update
the old one
L234[05:48:46] <gigaherz|work> okay first
of all, is the model actually loading?
L235[05:48:51] <gigaherz|work> is accepts
returning true at any point?
L236[05:48:58] <gigaherz|work> it is
baking and all?
L237[05:49:54] <risux> Yes, the model is
loading, it bakes, it retextures and everything
L238[05:50:02] <risux> Just doesnt
rotate
L239[05:50:41] <gigaherz|work> so in your
getQuads, it is entering the "if"s ?
L240[05:50:50] <gigaherz|work> and NOT
returning the default wavefrontModel field?
L241[05:51:35] <risux> Yes, based on the
fact that the texture I declare in the extended state is applied
:P
L242[05:52:32] <gigaherz|work> then I'm
out of ideas
L243[05:52:44] <gigaherz|work> the only
thing I can think of is to NOT use the blockstates for
rotation
L244[05:52:49] <gigaherz|work> and apply
your own hardcoded ones
L245[05:52:55] <gigaherz|work> directly in
the baked model
L246[05:53:12] <gigaherz|work> like
L247[05:53:13] <gigaherz|work> new
TRSRTransformation(ModelRotation.getModelRotation(90, 0))
L248[05:53:30] <gigaherz|work> using a
switch(state.getValue(FACING)) or similar
L249[05:53:45] <gigaherz|work> and pass
that TRSRTransformation object onto the obj model
L250[05:54:00] <gigaherz|work> like I do
here:
L253[05:54:45] <gigaherz|work> actually no
don'tcopy from that
L254[05:54:53] <gigaherz|work> ;P
L255[05:58:51] <risux> Hm, maybe I don't
have something right with my rotation property. gonna double check
something
L256[06:02:34]
⇨ Joins: SquareWheel (~SquareWhe@192.252.224.31)
L257[06:05:28] <risux> It looks correct,
it's showing the direction it's facing in the getQuads() call when
I print out the blockstate too.
L258[06:05:49] <gigaherz|work> yeah then
try what I said
L259[06:05:59] <risux> Will do
L260[06:06:01] <gigaherz|work> instead of
using modelState passed in
L261[06:06:20] <gigaherz|work> make your
own ones with like "new
TRSRTransformation(ModelRotation.getModelRotation(90,
0))"
L262[06:13:44] <risux> How do I apply the
transformations?
L263[06:14:14] ⇦
Quits: immibis (~chatzilla@125-237-219-3.jetstream.xtra.co.nz)
(Ping timeout: 204 seconds)
L264[06:15:28]
⇨ Joins: Redfoxmoon
(~Red@177.92-221-236.customer.lyse.net)
L265[06:15:52] <gigaherz|work> risux: you
give that TRSRTransformation to the bake method
L266[06:15:55] <gigaherz|work> as the
IModelState
L267[06:17:31] <risux> Ahh, alright
L268[06:22:48]
⇨ Joins: MonkeyTyrant
(~MonkeyTyr@blk-212-75-47.eastlink.ca)
L269[06:29:24] ⇦
Quits: MonkeyTyrant (~MonkeyTyr@blk-212-75-47.eastlink.ca) (Quit:
Leaving)
L270[06:30:58] <risux> Finally works!
Thanks for all of your help, I really do appreciate it
L271[06:32:53]
⇨ Joins: abab9579 (~Abastro@143.248.189.68)
L272[06:32:55] ⇦
Quits: Abastro (~Abastro@143.248.189.68) (Read error: Connection
reset by peer)
L273[06:33:56]
⇨ Joins: AshIndigo
(uid202308@id-202308.charlton.irccloud.com)
L274[06:36:57]
⇨ Joins: Abastro (~Abastro@143.248.189.68)
L275[06:36:57] ⇦
Quits: abab9579 (~Abastro@143.248.189.68) (Read error: Connection
reset by peer)
L276[06:37:51] <SquareWheel> I have a dumb
question. When building a mod, it also spits out a
"sources" version. Is that what's used as an API in other
mods?
L277[06:38:01] <gigaherz|work> no
L278[06:38:13] <SquareWheel> oh
L279[06:38:38] <gigaherz|work> the sources
package is useful because you can attach those sources along with
the mod jar
L280[06:38:46] <gigaherz|work> and see the
source mappings in the debugger
L281[06:39:19] <SquareWheel> Ah okay, so
not a proper API, but it's possible to build against it that
way.
L282[06:39:48]
⇨ Joins: abab9579 (~Abastro@143.248.242.102)
L283[06:40:14] <gigaherz|work> uhm....
it's a sources package
L284[06:40:21] <gigaherz|work> literally
nothing else, nothing more
L285[06:40:45] <gigaherz|work> if you want
to use the mod as a dependency, you would just use the normal
jar
L286[06:41:04] <gigaherz|work> the only
use for those sources is to complement the binary jar so that you
can step through the code in a debugger
L287[06:41:20] <SquareWheel> Ah, I didn't
realize you needed both jars
L288[06:41:27] <gigaherz|work> you
don't
L289[06:41:30] <gigaherz|work> the binary
is the only one you need
L290[06:41:32] <gigaherz|work> the other
one is extra
L291[06:41:39] <barteks2x> actually, in
the project structure I remember sometimes seeing src/api or
something like this, is this where I should have actual API?
L292[06:41:55] <gigaherz|work> src/api is
supposed to be used for the api packages you want to export
L293[06:42:09] <gigaherz|work> but the
default configuration for forgegradle doesn't include them in the
jar
L294[06:42:27] <barteks2x> well, it should
be possible to make it include that, right?
L295[06:42:29] <gigaherz|work> so people
often put in src/api things they want to compile against, but not
include in the jar
L296[06:42:45] <barteks2x> oh...
L297[06:43:02] <gigaherz|work> even if
it's not technically the right use for that sourceset
L298[06:43:24] ⇦
Quits: Abastro (~Abastro@143.248.189.68) (Ping timeout: 383
seconds)
L299[06:44:41] <barteks2x> Also, I already
know about one mod that in principle shouldn't have big issues with
cubic chunks, but actually crashes and even if I fix the crash,
it's probably unfixable without special mod-specific hacks
L300[06:44:57] <barteks2x> (it's
mekanism)
L301[06:44:57] <gigaherz|work> hm?
L302[06:45:46] <SquareWheel> Oh, I'm dumb.
The sources jar is literally just a snapshot of the source code at
compile time.
L303[06:45:51] <SquareWheel> I thought it
was a source map or something.
L304[06:46:03] <barteks2x> it crashes
because it's listening for chunk load event, and it's getting the
TileEntity map there casting it to hashmap, cloning it and then
iterating over it to do a registration of some kind
L305[06:46:18] ⇦
Quits: abab9579 (~Abastro@143.248.242.102) (Ping timeout: 383
seconds)
L306[06:46:22] <barteks2x> and with cubic
chunks it's not instance of hashmap, and even if it was it would be
empty at that time
L307[06:47:25] <barteks2x> I have no clue
what it needs that for
L308[06:47:43] <barteks2x> but I doubt
this mod will ever be compatible here
L309[06:48:46]
⇨ Joins: Naiten (Naiten@5.143.23.229)
L310[06:49:36] <SquareWheel> Okay, next
question then. Mods used to (still do?) include deobf versions. I
assumed that was the same as the -source jar, but I guess those are
different?
L311[06:49:58] <barteks2x> I have a -dev
jar
L312[06:50:05] <barteks2x> which is the
deobf one I think
L313[06:50:29] <SquareWheel> Makes
sense
L314[06:50:45] <gigaherz|work> dev jars
are NOT recommended
L315[06:50:47] ⇦
Quits: h5h77 (~h5h77@ip1f10331f.dynamic.kabel-deutschland.de)
(Remote host closed the connection)
L316[06:50:54] <gigaherz|work> because
they use the mappings you compiled which
L317[06:51:00] <gigaherz|work> which can
cause issues when other people use them as dependencies
L318[06:51:07] <gigaherz|work> it's best
to have the proper SRG-named jars
L319[06:51:17] <gigaherz|work> and use
either forgegradle's own deobfCompile support
L320[06:51:19] <gigaherz|work> or
BON2
L321[06:51:20] <barteks2x> I created new
jarDev "Jar" task for it with classifier "dev",
that simply isn't reobfuscated
L322[06:51:32] <gigaherz|work> then it's
the same as the normal jar?
L323[06:51:34] <gigaherz|work> ...
L324[06:51:44] <gigaherz|work> wiat
reobf
L325[06:51:45] <gigaherz|work> yeah
L326[06:51:48] <diesieben07> does the FG
deobfCompile remap the sources?
L327[06:51:48] <gigaherz|work> then the
issue applies
L328[06:51:57] <diesieben07> or just the
compiled code?
L329[06:52:01] <gigaherz|work> I haven't
looked
L330[06:52:08] <barteks2x> I still think I
needed the dev jar once for something...
L331[06:52:17] <barteks2x> not sure what I
needed it for
L332[06:52:20] <gigaherz|work> but so far
as I know, the -sources jar is meant to be used WITH that
feature
L333[06:52:26] <gigaherz|work> so it would
be strange if it does not
L334[06:52:34] <SquareWheel> "it's
best to have the proper SRG-named jars" This being the normal
mod jar?
L335[06:52:40] <gigaherz|work> at least I
am under the impression that's when sources jar was added
L336[06:52:42] <diesieben07> well, you
would need a sources jar with SRG names...
L337[06:52:55] <gigaherz|work> that's
exactly it
L338[06:52:56] <diesieben07> which I don't
think exists
L339[06:53:12] <gigaherz|work> isn't that
exactly what forgegradle compiles when it outputs the
-sources.jar?
L340[06:53:20] <gigaherz|work> a remapped
src snapshot?
L341[06:53:29] <diesieben07> afaik it's
just the source as you typed it
L342[06:53:31] <diesieben07> but idk
L343[06:54:15] <gigaherz|work> nope
L344[06:54:15] <gigaherz|work> Toshiba
Satellite L70-C
L345[06:54:17] <gigaherz|work> oops
L346[06:54:23] <gigaherz|work> private
ScrollingOverlay()
L347[06:54:23] <gigaherz|work> {
L348[06:54:23] <gigaherz|work> renderItem
= Minecraft.func_71410_x().func_175599_af();
L349[06:54:25] <gigaherz|work> }
L350[06:54:27] <gigaherz|work> it's
remapped to SRG
L351[06:54:31] ⇦
Quits: Seppon (~Noppes@ip56530f2e.direct-adsl.nl) (Ping timeout:
200 seconds)
L352[06:54:35] <diesieben07> that is very
nice then
L353[06:55:14] <diesieben07> Also >
Toshiba - I feel sorry for you.
L354[06:55:24] <gigaherz|work> nono,
that's someone else
L355[06:55:31] <gigaherz|work> in the
ReactOS channel
L356[06:55:34] <gigaherz|work> problem
is
L357[06:55:44] <gigaherz|work> I used
teamviewer to look up the sources.jar from one of my build
folders
L358[06:55:48] <diesieben07> reactos
lol
L359[06:55:51] <gigaherz|work> and I'm at
work so I'm on a macbook
L360[06:55:58] <gigaherz|work> so I
pressed cmd-C instead of ctrl-C
L361[06:56:01] <diesieben07> Again, I feel
sorry for you. :D
L362[06:56:29] <gigaherz|work> so yeah
ctrl/cmd mismatch due to using teamviewer from a mac ;P
L363[06:56:56] <gigaherz|work> and
meh
L364[06:57:08] <gigaherz|work> the
alternative would be to get my own laptop, and do all the
configuration myself
L365[06:57:17] <gigaherz|work> and if I
run into trouble, it's up to me
L366[06:57:21] <gigaherz|work> since they
can't help me with it
L367[06:57:26] <diesieben07> thats what i
am doing at the moment, because the work macbook shat itself
L368[06:57:30] <diesieben07> HFS is a
bitch
L369[06:57:47] <gigaherz|work> so yeah I
continue using the macbook until I decide to quit ;P
L370[06:58:12] <SquareWheel> Okay, so just
making sure I understand: Normal jars are SRG-named. In the past,
dev-jars were distributed which were deobfuscated (using Forge
mappings from that build). But now you should use ForgeGradle's
"deobfCompile" feature instead, which works with
SRG-named jars.
L371[06:58:25] <diesieben07> bossman asked
me if i want a new macbook or a windows laptop, i am opting for the
laptop and putting linux on it :P
L372[06:58:27] <gigaherz|work> yup
L373[06:58:32] <SquareWheel> yeey
L374[06:58:32] <gigaherz|work>
SquareWheel: to explain why:
L375[06:58:38] <gigaherz|work> suppose you
have two dependencies
L376[06:58:48] <gigaherz|work> and one
dependency was compiled when it was Minecraft.thePlayer
L377[06:58:55]
⇨ Joins: Cast0077
(~Cast0077@24-151-30-78.dhcp.nwtn.ct.charter.com)
L378[06:58:55] <gigaherz|work> but the
other one was compiled when it was Minecraft.player
L379[06:59:05] <gigaherz|work> there would
be NO WAY to use both at once
L380[06:59:14] <gigaherz|work> hence using
deobf jars is bad
L381[06:59:40] <SquareWheel> Truthfully
I'm not too sure on the different mappings. There was Notch names,
SRG names, and MCP names, right?
L382[06:59:54] <SquareWheel> SRG-names
being the end product. Notch names presumably being the original
code.
L383[07:00:24] <diesieben07> Notch names
are the names as we get them from Mojang, e.g. class axz field
d
L384[07:00:28] <gigaherz|work> nono
L385[07:00:30] <diesieben07> SRG names are
"normalized"
L386[07:00:35] <gigaherz|work> like
L387[07:00:37] <SquareWheel> Oh, so Notch
are the obfuscated names.
L388[07:00:37] <diesieben07> so
field_12356_d
L389[07:00:42] <gigaherz|work> !gm
getMinecraft
L390[07:00:49] <TechnicianLP> Notch:
abx.a().f -> MCP: rg Minecraft.player().something
L391[07:00:50] <diesieben07> and MCP names
are readable names
L392[07:00:51] <gigaherz|work> [14:00]
<EsperNet> (MCPBot_Reborn): Name : z => func_71410_x =>
getMinecraft
L393[07:00:54] <gigaherz|work> see that
line
L394[07:00:56] <gigaherz|work> in that
order
L395[07:01:03] <gigaherz|work> notch ->
SRG -> pretty name
L396[07:01:27] <gigaherz|work> so in the
jar file for 1.11, the name is "z"
L397[07:01:44] <gigaherz|work> in the
forge runtime environment, it's "func_71410"
L398[07:01:59] <gigaherz|work> and in the
development environment it's "getMinecraft" -- unless
your mappings choose another name
L399[07:03:10] ⇦
Quits: SquareWheel (~SquareWhe@192.252.224.31) (Read error:
Connection reset by peer)
L400[07:03:43]
⇨ Joins: SquareWheel (~SquareWhe@192.252.224.31)
L401[07:03:48] <SquareWheel> I'm sorry, my
internet cut out.
L402[07:03:59] <gigaherz|work> [14:00]
(gigaherz|work): [14:00] <EsperNet> (MCPBot_Reborn): Name : z
=> func_71410_x => getMinecraft
L403[07:04:00] <gigaherz|work> [14:00]
(gigaherz|work): see that line
L404[07:04:00] <gigaherz|work> [14:00]
(gigaherz|work): in that order
L405[07:04:01] <gigaherz|work> [14:01]
(gigaherz|work): notch -> SRG -> pretty name
L406[07:04:03] <gigaherz|work> [14:01]
(gigaherz|work): so in the jar file for 1.11, the name is
"z"
L407[07:04:05] <gigaherz|work> [14:01]
(gigaherz|work): in the forge runtime environment, it's
"func_71410"
L408[07:04:07] <gigaherz|work> [14:01]
(gigaherz|work): and in the development environment it's
"getMinecraft" -- unless your mappings choose another
name
L409[07:04:21] <SquareWheel> That's a
great explanation, thank you.
L410[07:04:35] <SquareWheel> The pretty
name (getMinecraft) is MCP naming, then?
L411[07:04:43] <gigaherz|work> that's what
I call it
L412[07:04:46] <gigaherz|work> dunno if it
has an official name
L413[07:04:52] <SquareWheel> And on
Forge's compile, we go back a step to SRG.
L414[07:04:56] <gigaherz|work> but I guess
"mcp name" is as good as any
L415[07:05:00] <gigaherz|work> and
yes
L416[07:05:09] <gigaherz|work> the jar you
build and use in the runtime environment will be in SRG
L417[07:05:30] <SquareWheel> Which is why
we need the -source jar to make it easier to debug/code
against.
L418[07:05:50]
⇨ Joins: Necro
(~Necro@p200300700D1F384018ED9BD029490DE9.dip0.t-ipconnect.de)
L419[07:06:27] <SquareWheel> Well geez,
I'm glad I finally learned that. Always see terms in the forum and
such but never an explanation written down. Much thanks.
L420[07:17:14]
⇨ Joins: Seppon
(~Noppes@ip56530f2e.direct-adsl.nl)
L422[07:18:33] <gigaherz|work> pre 6
out
L423[07:19:26] <kashike> woo
L424[07:19:59] <SquareWheel> You guys
excited or apprehensive about 1.12?
L425[07:20:07] <kashike> excited
L426[07:20:16] <gigaherz|work> i'm mildly
scared to what changes it will require in terms of modding
L427[07:20:22] <gigaherz|work> but excited
overall
L428[07:20:25] <kashike> spring is here
I'm so excited I wet my plants
L429[07:20:27] <SquareWheel> Looks like a
pretty technical change. Recipe book is interesting.
L430[07:20:29] <gigaherz|work> I do want
to do some porting
L431[07:20:41] <gigaherz|work> and make my
mods fit better with the new stuff and such
L432[07:21:17] <SquareWheel>
"Optimized recipe book & creative inventory searching a
lot, especially when using mods" Oh baby
L433[07:21:51] <kashike> heh
L434[07:21:56] <gigaherz|work> what how do
they know how it will work with mods?!
L435[07:21:59] <gigaherz|work> ;P
L436[07:22:13] <SquareWheel> Modding API
confirmed? :)
L437[07:23:19] <diesieben07> "with
mods" = with 10x the amount of items & blocks :D
L438[07:23:33] <gigaherz|work> yeah
L439[07:23:46] <gigaherz|work> I guess
they just made it have multiple of each item as a test or
something
L440[07:24:02] <gigaherz|work> or maybe
it's just not O(n^2) or O(n^3) or wahtever it was before
anymore
L441[07:24:49] <Corosus> theyve been
talking back and forth, we modders complained creative gui was shit
with many mods so they listened
L442[07:25:41]
⇨ Joins: Intektor
(~Intektor@p5B275292.dip0.t-ipconnect.de)
L443[07:25:49] <diesieben07> wow these...
"functions" are pretty cool
L444[07:25:55] <Intektor> how do I check
if a player is operator
L445[07:26:00] <diesieben07> they even
have a tick event :D
L446[07:26:01] <Intektor> and does this
also work on client?
L447[07:28:25] <barteks2x> "Optimized
chunk loading, a previous pre-release slowed it down :(" -
interesting.
L448[07:31:37] <Intektor> is there a way
to get the permission level of a player?
L449[07:32:01] <SquareWheel> Looks like
PlayerList#getOppedPlayers has that info
L450[07:32:41] <SquareWheel> Never as
simple as player.isOp(), is it?
L451[07:32:44] <Intektor> can I get that
on the client as well
L452[07:33:02] <diesieben07> No
L453[07:33:10] <diesieben07> The client
does not know if is an OP
L454[07:34:38] <Intektor> cann I tell the
client?
L455[07:34:43] <Intektor> I need to do
that
L456[07:34:44] <diesieben07> why?
L457[07:36:02] <Intektor> I have an area
where no player is able to do anything unless the field owner of
this field tells the server that THAT player is allowed to edit
this. But I want ops to be able to edit it anyway
L458[07:36:17] <Intektor> with I field I
mean area of black that a player can claim as its own
L459[07:36:23] <Intektor> so no one can
grief him
L460[07:36:32] <Intektor> blocks
L461[07:36:45] <diesieben07> hm, yeh you
can do that then
L462[07:37:09] <Intektor> is there an even
fired when a player is opped
L463[07:37:11] <Intektor> ?
L464[07:37:17] <diesieben07> no
L465[07:37:24] <Intektor> a command
event?
L466[07:38:23] <LordFokas> Does anyone
know what could possibly be causing my custom entity to not being
deserialized properly? The game seems to instance it and read all
the data correctly from NBT, but then discard the entity and just
instance a new one that is placed on the exact same
coordinates.
L467[07:38:25] <SquareWheel> Seems like
most of that can be handled on the server. Might be useful to
update the player "you can edit this", though.
L468[07:38:50] <Intektor> SquareWheel, but
its nice when the events get canceled at client side as well
L469[07:38:56] <Intektor> so it doesnt
look like lag
L470[07:39:01] <SquareWheel> True
L471[07:39:15] <SquareWheel> Custom
packets, then?
L472[07:39:22] <Intektor> what I am doing
right now
L473[07:40:59] <SquareWheel> Or
reflection, if that info can be accessed using it. Trading a bit of
grossness for saving on performance/network traffic.
L474[07:41:40] <Intektor> diesieben07 said
that the client does not know if the client is op or not
L475[07:41:47] <Intektor> and I have trust
in mr 7
L476[07:42:03] <SquareWheel> Yeah, just
wasn't sure if that was because it was never sent, or it was just
not made public.
L477[07:42:11] <SquareWheel> Probably the
former
L478[07:43:03] <SquareWheel> So, the
reason I was asking about API/mapping info earlier is I'm trying to
make a small addon for Tough as Nails.
L479[07:43:08] <SquareWheel> The problem
is, they don't have a Maven repo. And it's one of those mods which
crashes when placed in the dev environment.
L480[07:43:35] <SquareWheel> I think I
would need to create my own deobf build in this case, and rely on
that then. Is that right?
L481[07:47:55]
⇨ Joins: RichardG_ (~richardg8@201.37.254.10)
L482[07:47:55]
MineBot sets mode: +v on RichardG_
L483[07:48:06] ⇦
Quits: RichardG (~richardg8@201.37.254.10) (Ping timeout: 186
seconds)
L484[07:49:49]
⇨ Joins: mikeprimm
(~mikeprimm@2a01:7e00::f03c:91ff:fe70:44b7)
L485[07:51:24] ⇦
Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Remote
host closed the connection)
L486[07:53:42] <diesieben07> Intektor,
there is no easy way to detect when the OP status changes
L487[07:54:54] <Intektor> I could probably
just add op item that allows players to bypass all of that
L488[07:57:50] <Subaraki> something might
have gone wrong when refactoring names x) shieldName =
PlayerClass.get(player).get(player).get(player).getVanillaShieldSuffix();
L489[07:58:30] <SquareWheel> Just gotta be
extra sure it's the right player.
L490[07:59:03] <LordFokas> Intektor,
although that's a neat shortcut, it does feel really cheap. Just my
2 cents.
L491[07:59:32] <Intektor> well I
understand, do you have any better idea?
L492[08:02:33] ⇦
Quits: mumfrey (~Mumfrey@dedi5.eq2.co.uk) (Ping timeout: 204
seconds)
L493[08:16:14] <LordFokas> The path you
were taking seemed fine to me. Send a packet on player join (&
on player [DE]OP?) informing of player op status so that the client
nicely overrides everything.
L495[08:19:16] <Subaraki> lol square
^^
L496[08:20:33] ⇦
Quits: cjm721 (~cjm721@mobile-107-77-172-86.mobile.att.net) (Remote
host closed the connection)
L497[08:24:36] <Subaraki> can i just rerun
gradlew eclipse without building first ?
L498[08:24:41] <Subaraki> because my
eclipse is fucked up
L499[08:24:57] <LordFokas> can anyone
think of a reason why Entity#readEntityFromNBT isn't being called
for my custom entities on the client side??
L500[08:26:58] <Subaraki> you call it
somewhere ?
L501[08:28:24] <diesieben07> entities are
usually never read fro NBT on the client...
L502[08:39:16] ⇦
Quits: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
(Quit: Leaving.)
L503[08:39:54] ⇦
Quits: Naiten (Naiten@5.143.23.229) (Read error: Connection reset
by peer)
L504[08:54:22]
⇨ Joins: sinkillerj
(~sinkiller@nc-67-232-10-214.dhcp.embarqhsd.net)
L505[09:00:48] ⇦
Quits: Intektor (~Intektor@p5B275292.dip0.t-ipconnect.de) (Quit:
Leaving)
L506[09:02:08] <barteks2x> I'm sometimes
getting strange FPS issues, fps goes down to 1-2 for some time and
then goes back up again. if I pause and unpause - it goes pack up.
And I've never been able to enable the profiler pie chart quickly
enough to see what is going on...
L507[09:08:20]
⇨ Joins: malte0811
(~malte0811@p4FED0081.dip0.t-ipconnect.de)
L508[09:14:10]
⇨ Joins: mumfrey (~Mumfrey@dedi5.eq2.co.uk)
L509[09:14:24] <Subaraki> ive been doing
rebuilds for days ... why is the rebuilds so slow ;_;
L510[09:15:47]
⇨ Joins: Javaschreiber
(~Thunderbi@bt-nac-0095.nac.uni-bayreuth.de)
L511[09:16:02] ⇦
Quits: Javaschreiber (~Thunderbi@bt-nac-0095.nac.uni-bayreuth.de)
(Client Quit)
L512[09:17:22] <malte0811> I have found a
potential bug: When onItemUseFirst returns anything but PASS on the
client, the packet for using items on blocks isn't send to the
server. Is that intended? It prevents server-side code in that
method from working unless one manually sends the packet or returns
PASS which may result in interactions from both hands
L513[09:26:56]
⇨ Joins: ScottehBoeh (~ScottehBo@95.149.232.76)
L514[09:30:33] <ScottehBoeh> Gooood
day
L515[09:30:47] <Subaraki> waddup
L516[09:31:34] ⇦
Quits: Seppon (~Noppes@ip56530f2e.direct-adsl.nl) (Ping timeout:
186 seconds)
L517[09:31:36] ⇦
Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9fzwswheb2vaxz2.ipv6.telus.net) (Ping
timeout: 383 seconds)
L518[09:40:54] <LordFokas> diesieben07,
then how should I sync data that I need on both sides?
L519[09:41:09] <diesieben07> using
packets
L520[09:41:22] <diesieben07> why would you
even think about NBT for that job? NBT is for persisting data to
disk...
L521[09:42:09] <LordFokas> I was just
transposing the way things are done in TileEntities
L522[09:42:16] <gigaherz|work> I wish we
could get rid of ALL the runtime nbt
L523[09:42:20] <gigaherz|work> like, even
from itemstacks
L524[09:42:24] <diesieben07> ^^^
x1000
L525[09:42:35] <gigaherz|work> make the
NBT an opt-in capability only for backward compatibility
L526[09:42:38] <diesieben07> using NBT for
client<>server syncing in TEs is... ugly at best
L527[09:42:47] <LordFokas> I'm not much of
an NBT fan
L528[09:43:11] <LordFokas> I use whatever
does the job, but I do like to get it well done.
L529[09:43:21] <diesieben07> like... you
serialize to NBT first, then you serialize that to bytes
L530[09:43:28] <diesieben07> and on the
other end you do the same in reverse
L531[09:43:47] <gigaherz|work> well that's
not necessarily bad
L532[09:43:50] <diesieben07> you could
just serialize to bytes in the first place
L533[09:43:52] <gigaherz|work> not per
se
L534[09:44:10] <gigaherz|work> having a
tagged format is more robust
L535[09:44:16] <gigaherz|work> it's just
overkill for most use cases
L536[09:44:24] <diesieben07> for a
save-format, yes
L537[09:44:26] <diesieben07> but not for
networking
L538[09:44:40] <LordFokas> the worst thing
for me in NBT is how there are default values for non-existant
keys. You misspelt a key name? heres a 0 / false / "".
Good luck figuring out what's wrong.
L539[09:44:56] <gigaherz|work> that's what
hasKey is for
L540[09:44:56] ⇦
Quits: Chais (~Chais@62.178.210.212) (Read error: Connection reset
by peer)
L541[09:45:55] <LordFokas> EXACTLY. If I
want a default value I use the fucking hasKey method, I don't want
the NBT compound spitting out a default value and concealing an
error!!!
L542[09:46:05] <LordFokas> It's just plain
bad design
L543[09:46:12] ***
TTFT|Away is now known as TTFTCUTS
L544[09:46:12] <gigaherz|work>
incidently
L545[09:46:40]
⇨ Joins: covers1624_
(~covers162@ppp122-232-6.static.internode.on.net)
L546[09:46:40] <gigaherz|work> i'd also
like for stack sizes and meta values to be var-int
L547[09:46:50] <gigaherz|work> and use as
many bytes as needed (up to 32bit or whatever)
L548[09:47:01] <diesieben07> well, 40 bit
:P
L549[09:47:12] <gigaherz|work> well I
meant 32bit decoded, encoded as up to 6 bytes
L550[09:47:22] <diesieben07> where do you
get 6 from? :O
L551[09:47:39] <gigaherz|work> I was
picturing utf-8 encoding
L552[09:49:05] ⇦
Quits: covers1624 (~covers162@ppp122-232-6.static.internode.on.net)
(Ping timeout: 201 seconds)
L553[09:49:37]
⇨ Joins: Chais (~Chais@62.178.210.212)
L554[09:51:38] <Corosus> oh damn, at sub
20 fps, ClientTickEvent always gets a tick, onUpdate for particles
will skip some
L555[09:51:49] <Corosus> this explains
some runaway fps death with particles in my code....
L556[09:52:04] <Corosus> i wonder if this
is a forge bug (1.10.2)
L557[09:53:00] <Corosus> sucks because it
results in a lot more particles that lags it even more that causes
even more particles, and so on
L558[09:53:16] ⇦
Quits: Alex_hawks
(~Alex_hawk@2001:8003:8572:a900:fd82:8cd1:b9e2:f7ce) (Read error:
Connection reset by peer)
L559[09:53:20] *
Corosus dives deep into the fml code
L560[09:53:59]
⇨ Joins: Alex_hawks
(~Alex_hawk@2001:8003:8572:a900:fd82:8cd1:b9e2:f7ce)
L561[09:54:45] ⇦
Quits: Cast0077 (~Cast0077@24-151-30-78.dhcp.nwtn.ct.charter.com)
(Quit: Poof)
L562[09:55:27] <Corosus> ah wait, i think
its my own bug
L563[09:55:59] <Corosus> i think i just
found a 6 year old bug in my code \o/
L564[09:57:19]
⇨ Joins: Hgrebnednav
(~Hgrebnedn@d8D872A6E.access.telenet.be)
L565[09:58:04]
⇨ Joins: Fye
(~Fye@dynamic-adsl-78-13-161-235.clienti.tiscali.it)
L567[09:59:04] ⇦
Quits: Davnit (~Davnit@72-189-115-20.res.bhn.net) (Ping timeout:
204 seconds)
L568[09:59:42] ⇦
Quits: Hgreb (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping
timeout: 204 seconds)
L569[10:05:07] ⇦
Quits: gigaherz|work (~gigaherz@84.89.63.25) (Ping timeout: 201
seconds)
L570[10:13:43] <ScottehBoeh> Best way to
check if a player is within two set coordinates?
L571[10:15:02] <diesieben07> new
AxisAlignedBB(pos1, pos2).isVecInside(new Vec3d(x, y, z))
L572[10:15:37] <ScottehBoeh> Ah!
Thanks
L573[10:17:17] ⇦
Quits: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net) (Quit:
this quit message is 100% guaranteed not to contain
obscenity.)
L574[10:17:50]
⇨ Joins: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net)
L575[10:18:16] ⇦
Quits: sinkillerj (~sinkiller@nc-67-232-10-214.dhcp.embarqhsd.net)
(Remote host closed the connection)
L576[10:19:55]
⇨ Joins: Seppon
(~Noppes@ip56530f2e.direct-adsl.nl)
L577[10:23:06] ***
PaleOff is now known as PaleoCrafter
L578[10:25:04] <Mimiru> Hmm...
L579[10:25:11] <Mimiru> Oh hey, wrong
channel :D
L580[10:25:12] <Mimiru> hai
L581[10:30:31] ⇦
Parts: malte0811 (~malte0811@p4FED0081.dip0.t-ipconnect.de)
())
L582[10:33:19]
⇨ Joins: KissOfFate
(~KissOfFat@pool-173-53-76-122.rcmdva.fios.verizon.net)
L583[10:49:07]
⇨ Joins: KGS
(~KGS@h-158-174-9-249.na.cust.bahnhof.se)
L584[10:50:09]
⇨ Joins: Hgreb
(~Hgrebnedn@d8D872A6E.access.telenet.be)
L585[10:52:06] ⇦
Quits: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping
timeout: 186 seconds)
L586[11:09:20]
⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L587[11:10:37] ***
diesieben07 is now known as diesieben|away
L588[11:15:38] <Shawn|i7-Q720M> anyone
here know why extrautilities sonar goggles dont work?
L589[11:16:15] ***
MrKick|Away is now known as MrKickkiller
L590[11:22:47]
⇨ Joins: TomyLobo
(~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de)
L591[11:24:32] <ghz|afk> Shawn|i7-Q720M:
how come you have your cpu included in your nickname? ;P
L592[11:24:43] <ghz|afk> (also, I don't
know)
L594[11:26:50] <ghz|afk> heh
L595[11:29:10]
⇨ Joins: gabizou
(~gabizou@irc.spongepowered.org)
L596[11:29:39]
⇨ Joins: airbreather_
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L597[11:30:03] <KissOfFate> this obj issue
is killing me .-.
L598[11:31:00]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9fzx1fdz3uzg94u.ipv6.telus.net)
L599[11:31:32] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Ping timeout: 204 seconds)
L601[11:37:41] <tterrag> it changed the
event semantics entirely
L602[11:37:47] <tterrag> and now I can't
use it for what I did in 1.10
L603[11:38:47]
⇨ Joins: Javaschreiber
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de)
L604[11:42:02] <killjoy1> almost a year
ago
L605[11:42:27] <tterrag> more like 6
months
L606[11:42:57] <tterrag> and so
what?
L607[11:43:56] <ghz|afk> well
L609[11:44:09] <ghz|afk> is the PR asking
to bring back a way to have the old behaviour
L610[11:44:14] <ghz|afk> but that one was
not merged
L611[11:44:23] <tterrag> yep that's
exactly my problem
L612[11:44:30] <ghz|afk> maybe you can add
your input there
L613[11:44:34] <ghz|afk> so they know
people do care
L614[11:52:01] <tterrag> done
L615[11:52:09] <tterrag> the impl is
better but I wish binary compat wasn't broken in the first place
mid-version
L616[11:52:20] <tterrag> there goes my
hopes of a single 1.10/1.11 jar
L617[11:53:04]
⇨ Joins: Cojo
(~Cojo@2606:a000:4c46:8d00:14a6:6ec1:a9f:aa6a)
L618[11:57:40]
⇨ Joins: McJty
(~jorrit@94-224-152-129.access.telenet.be)
L619[11:58:55] ***
airbreather_ is now known as airbreather
L620[11:58:59] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Quit: Leaving)
L621[11:59:12]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L622[12:03:46]
⇨ Joins: Hex
(~Hex@four.out.of.five.doctors.recommend.hex.lc)
L623[12:05:01] <killjoy1> yay,
1.12pre6
L624[12:13:57] <LordFokas> great. what are
they breaking now, on 1.12?
L625[12:14:11] <killjoy1> optimized chunk
loading
L627[12:19:15]
⇨ Joins: williewillus
(~williewil@cpe-24-28-24-13.austin.res.rr.com)
L628[12:27:20] <tterrag> > Optimized
recipe book & creative inventory searching a lot, especially
when using mods
L629[12:27:22] <tterrag> they said the m
word
L630[12:27:40] <ghz|afk> XD
L631[12:29:34] ⇦
Quits: Hex (~Hex@four.out.of.five.doctors.recommend.hex.lc) (Remote
host closed the connection)
L632[12:29:53] <KissOfFate> lol
L633[12:30:02] <killjoy1> Something forge
doesn't have to do
L634[12:30:10] <tterrag> they just added a
cache
L635[12:30:15] <tterrag> not rocket
science
L636[12:30:18] <tterrag> no threading or
anything like that
L637[12:30:59]
⇨ Joins: Hex
(~Hex@four.out.of.five.doctors.recommend.hex.lc)
L638[12:31:05] <KissOfFate> yeah im still
trying to figure out the reason OBJ doesn't like
RenderLiving/EntityLiving
L639[12:31:18] <KissOfFate> or at least
the way I'm trying to render it
L640[12:31:31] <ghz|afk> OBJ shouldn't
care
L641[12:31:35] <ghz|afk> how do you draw
it?
L642[12:31:41] <ghz|afk> can you show the
entity renderer code you use?
L644[12:32:10] <KissOfFate> for some
reason the model loads, but the texture doesn't work for the
entities
L645[12:32:32] <KissOfFate> even when I
specify map_Kd in mtl and when I point getEntityTexture() to the
file as well
L646[12:32:41] <ghz|afk> what's
ModelUtils.renderQuads? Is that from forge or yours?
L647[12:33:07] <ghz|afk> hmm you shouldn't
do
L648[12:33:17] <ghz|afk>
GlStateManager.bindTexture(Minecraft.getMinecraft().getTextureMapBlocks().getGlTextureId());
in there, I think
L650[12:33:45] <ghz|afk> question
L651[12:33:51] <ghz|afk> can you try to
get rid of all that displaylist mess
L652[12:33:56] <ghz|afk> and just do the
.obj part in render()?
L653[12:34:27] <ghz|afk> or suggestion
rather
L654[12:34:40] <ghz|afk> this way we can
make sure the displaylists aren't getting in the way
L655[12:34:47] <KissOfFate> Ah alright,
I'll try that now
L656[12:35:07]
⇨ Joins: Hgrebnednav_
(~Hgrebnedn@d8D872A6E.access.telenet.be)
L657[12:35:41] <KissOfFate> loading up now
ghz
L658[12:35:52] <ghz|afk> that renderQuads
seems unnecessarily complex
L659[12:36:04] <KissOfFate> This was
borrowed from Draconic Evolution
L661[12:36:18] <ghz|afk> this is how I do
it
L662[12:36:23] <ghz|afk> with my
ModelHandle helper class
L663[12:36:45] <ghz|afk> the function
below that is for drawing the quads with a color multiplier
L664[12:36:46] <KissOfFate> I'll try that
after I test this
L665[12:36:56] ⇦
Quits: Hgreb (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping
timeout: 180 seconds)
L666[12:37:09] ***
LordFokas is now known as LordFokas|out
L667[12:37:43] <KissOfFate> I removed the
compile lists, now the model doesn't even show up at all
L668[12:38:15] <ghz|afk> hm?
L669[12:38:29] <williewillus> show code
again :P
L670[12:38:29] <KissOfFate> oh I misread
what you said, 1 second
L671[12:38:42] <ghz|afk> I meant like
remove ALL the code related to displaylists
L672[12:38:45] ⇦
Quits: TTFTCUTS (~ttftcuts@ns3366511.ovh.net) (Quit:
boop)
L673[12:38:57] <ghz|afk> everything from
line 42 to 74
L674[12:39:13] <ghz|afk> and replace it
with like, the code from 93 to 100
L675[12:39:37] <ghz|afk> maybe with some
extra translate call if needed ;P
L676[12:41:38]
⇨ Joins: h5h77
(~h5h77@ip1f10331f.dynamic.kabel-deutschland.de)
L677[12:41:51] <KissOfFate> it renders and
does the same exact thing ghz
L679[12:43:02] <ghz|afk> okay that's not
necessarily bad
L680[12:43:08] <ghz|afk> so
L681[12:43:29] <ghz|afk> since I haven't
used living entities
L682[12:43:38] <ghz|afk> how do you get
the model to draw?
L683[12:43:46] <ghz|afk> is it some
generic renderer or something custom?
L684[12:44:35] ⇦
Quits: ScottehBoeh (~ScottehBo@95.149.232.76) (Read error: -0x1:
UNKNOWN ERROR CODE (0001))
L686[12:44:50] <KissOfFate> ghz everything
is here
L687[12:45:48] <KissOfFate> I just
committed some new changes so refresh
L688[12:45:52] <ghz|afk> Idon't really
feel like going through your codebase ;P
L689[12:46:54] <KissOfFate> ah everything
relevant is there :p thats fine :p
L690[12:47:32] <ghz|afk> why do you have a
ModelBiped called RenderFish
L691[12:47:36] <ghz|afk> sounds like it
should be ModelFish
L692[12:47:44] <KissOfFate> it should
be
L693[12:47:46] <ghz|afk> ... and not a
biped ;P
L694[12:47:47] <KissOfFate> I misnamed it
lol
L695[12:48:54] <ghz|afk> I keep wondering,
though
L696[12:49:00] <ghz|afk> if you really
need to extend RenderLiving
L697[12:49:14] <ghz|afk> you could skip
all of that crap and just do your own custom renderer without
involving models
L699[12:49:41] <ghz|afk> like I did
here
L700[12:49:51] <KissOfFate> I just changed
it from ModelBiped to ModelBase and I renamed it to
ModelFishOBJ
L701[12:50:16] <KissOfFate> I use a
generified RenderFactory
L702[12:50:34] <williewillus> hmm so I
want to make a PR to allow custom icon rendering on maps... should
it be an event or a method on MapDecoration?
L703[12:51:01] <KissOfFate> pretty sure
thats a thing
L704[12:51:08] <KissOfFate> like already
pr'd
L705[12:51:11] <KissOfFate> but i might be
wrong
L706[12:51:17] <williewillus> it isn't
:P
L708[12:52:37] <KissOfFate> ah okay
L709[12:52:46] <ghz|afk> map icons?
L710[12:52:52] <ghz|afk> as in the actual
map itself?
L711[12:53:48] <williewillus> as in the
dot representing the player, a monument, an item frame
L712[12:53:52] <williewillus> i need to
draw custom ones
L713[12:53:52] <ghz|afk> sounds to me more
like you'd want to add custom MapDecoration.Type
L714[12:54:03] <williewillus> the texture
is hardcoded
L715[12:54:13] <williewillus> i can't
modify map_icons.png :P
L716[12:54:34] <ghz|afk> hmmm you could
extend MapDecorations, but that would only help server-side
L717[12:54:39] <KissOfFate> Would you mind
if I used your ModelHandle ghz? at least for testing then I'll make
my own around what I need
L718[12:54:43] <ghz|afk> you couldn't
really add to the packet handler
L719[12:54:46] <ghz|afk> KissOfFate: feel
free
L720[12:54:50] <ghz|afk> all of that stuff
is opensource
L721[12:54:56]
⇨ Joins: malte0811
(~malte0811@p4FED0081.dip0.t-ipconnect.de)
L722[12:55:08] <ghz|afk> if you don't
suffer from strong NIH, you can keep using it ;P
L723[12:55:15] <williewillus> well I have
a custom map already that's using custom packets
L724[12:55:24] <williewillus> so
subclassing mapdecoration shouldn't be impossible
L725[12:55:30] <williewillus> just
wondering how much flexibility to give my pr
L726[12:55:40] <williewillus> in case
someone wants to do fancy stuff for an icon
L727[12:56:07] <williewillus> i.e. should
it call out to a general MapDecoration.render() or should it just
be MapDecoration.getTexture()
L728[12:56:12] <ghz|afk> seems to me like
you should be adding a new method to MapDEcoration, for
getTextureLocation
L729[12:56:17] <ghz|afk> that defaults to
the default one
L730[12:56:28] <williewillus> so don't
allow a full render method?
L731[12:56:30] <ghz|afk> and a way to
specify more types
L732[12:56:40] <ghz|afk> as a
minimum
L733[12:56:44] <williewillus> well the
types are tricky because it's an enum
L734[12:56:56] <williewillus> and the uvs
in the texture are just drawn from the enum ordinal
L735[12:56:59] <ghz|afk> yeah but we have
EnumHelper.addwhatever
L736[12:57:01] ⇦
Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9fzx1fdz3uzg94u.ipv6.telus.net) (Ping
timeout: 383 seconds)
L737[12:57:18] <malte0811> Did anyone
answer my question while I was away? Regarding
onItemUseFirst?
L738[12:57:25] <williewillus> that still
breaks things though because then now your custom texture needs to
have empty gaps for the vanilla textures
L739[12:57:33] <ghz|afk> hmm yeah
L740[12:57:35] <williewillus> because the
vanilla decorations occupy all the lower ordinals
L741[12:57:36] <ghz|afk> unless you add
another method
L742[12:57:42] <ghz|afk> to get the
UVs
L743[12:57:49] <williewillus> but youcan't
implement that method using enumhelper?
L744[12:57:54] <ghz|afk> no I mean
L745[12:57:57] <ghz|afk> directly in
MapDecoration
L746[12:58:09] <williewillus> oh hm
maybe
L747[12:58:15]
⇨ Joins: Everseeking
(~Everseeki@pool-100-6-95-214.pitbpa.fios.verizon.net)
L748[12:58:17] <williewillus> oh
wait
L749[12:58:19] <williewillus> it already
has one lol
L750[12:58:29] <williewillus>
MapDecoration.getImage() -> Type.getIcon() ->
Type.ordinal()
L751[12:58:34] <ghz|afk> ah XD
L752[12:58:50] <williewillus> so this
should be simple
L753[12:58:55] <williewillus> just 1 extra
method in decoration
L754[12:58:57] <ghz|afk> wait
L755[12:58:58] <williewillus> malte0811:
what was the question?
L756[12:59:03] <ghz|afk> I don't see
that
L757[12:59:11] <ghz|afk> oh
L758[12:59:13] <ghz|afk> in the
constructor
L759[12:59:17] <ghz|afk> this.icon =
(byte)this.ordinal();
L760[12:59:21] <ghz|afk> even better
L761[12:59:26] <ghz|afk> means you can set
it in the EnumHelper call
L762[12:59:29] <malte0811> "I have
found a potential bug: When onItemUseFirst returns anything but
PASS on the client, the packet for using items on blocks isn't send
to the server. Is that intended? It prevents server-side code in
that method from working unless one manually sends the packet or
returns PASS which may result in interactions from both
hands"
L763[12:59:44] <ghz|afk> n owait that
constructor doesn't exist
L764[12:59:47] <ghz|afk> hmmm
L765[12:59:53] <ghz|afk> nevermind
¬¬
L766[13:00:01] <ghz|afk> you can just
override MapDEcoration.getImage ¬¬
L767[13:00:07] <killjoy1> malte0811, logic
is done on client and server
L768[13:00:33] <malte0811> It should, but
isn't if useFrist returns anything but PASS
L769[13:00:39] <malte0811> *useFirst
L770[13:01:04] <killjoy1> What i mean is
that method is called on both sides regardless of return
L771[13:01:25] <ghz|afk> williewillus: i'm
starting to wonder if it wouldn't be best to just have the render
code in it and just let people override that XD
L772[13:01:39] <ghz|afk> the issue
though
L773[13:01:48] <ghz|afk> is how do you
handle custom icons in terms of SPacketMaps?
L774[13:01:54] <ghz|afk> do you send
custom data for them or something?
L775[13:03:03] <ghz|afk> hmm no you can't
add a render method to MapDecoration
L776[13:03:10] <ghz|afk> because it's used
in the dedicated server
L777[13:03:23] <ghz|afk> unless you made
that method @SideOnly which is ugly ;P
L779[13:07:17] <KissOfFate> idk I don't
work with OpenGL at all, I'll go back to using boxes
>_>
L780[13:07:37] <KissOfFate> thanks for the
help williewillus & ghz
L781[13:10:57]
⇨ Joins: Girafi
(Girafi@0x5552fcc5.adsl.cybercity.dk)
L782[13:12:51] <williewillus> yeah writing
the test mod for this is gonna be a pain :P
L783[13:12:55] <williewillus> need to
basically add a custom map
L784[13:16:20]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net)
L785[13:16:51] <KissOfFate> wait should in
the TextureStitchEvent.Pre should I use
event.getMap().registerSprite(new ResourceLocation(MODID,
"entity/fish/fish"));
L786[13:17:14] <KissOfFate> or should I
write a custom sprite and use
event.getMap().setTextureEntry(customSprite);
L787[13:17:45] <williewillus> first
one
L788[13:18:05] <williewillus> also you
probably need "textures/" at the front of the path
L789[13:18:20] <williewillus> (I
think)
L790[13:18:34]
⇨ Joins: Davnit
(~Davnit@72-189-115-20.res.bhn.net)
L791[13:21:18] <KissOfFate> yeah im just
going to go back to boxes... I dont wanna write my own OBJ loader
like Lycanite Mobs author did
L792[13:21:28] <KissOfFate> again thanks
for the help
L793[13:22:28]
⇨ Joins: immibis
(~chatzilla@125-237-219-3.jetstream.xtra.co.nz)
L794[13:23:17] <KissOfFate> oh its immi
haha
L795[13:25:56]
⇨ Joins: Cast0077
(~Cast0077@24-151-68-108.dhcp.nwtn.ct.charter.com)
L796[13:33:15] <KissOfFate> ghz so I
removed/commented out
GlStateManager.bindTexture(Minecraft.getMinecraft().getTextureMapBlocks().getGlTextureId());
L797[13:33:15] <KissOfFate> and it
rendered the model wasnt sure if the texture applied as its the
same color as the base.. but the black and purple didnt show up..
is there another way I should be binding the texture?
L798[13:33:25] <KissOfFate> or do I not
need it at all
L799[13:34:36] ⇦
Quits: Rokiyo (~Rokiyo@101.167.173.217) (Read error: No route to
host)
L800[13:40:26] <Subaraki> any reason
potion effects dont run out after hitting 0:00 ?
L801[13:40:35] <Subaraki> my effect stays
around, but doesnt dissapear
L802[13:40:41] <Subaraki> it's not doing
anything really
L803[13:41:04] <Subaraki> might be a
desync issue, but the entity (arrow like) that causes the effect
spawns everything server side
L804[13:44:12] ⇦
Quits: Fye (~Fye@dynamic-adsl-78-13-161-235.clienti.tiscali.it)
(Read error: Connection reset by peer)
L805[13:45:23] <williewillus> are you
removing the effect yourself?
L806[13:45:31] <williewillus> or letting
it time out by itself?
L807[13:46:25] <SatanicSanta> Is there
something I'm supposed to do to get /help to work with my
client-side command that is more than just calling
ClientCommandHandler#registerCommand(ICommand)?
L808[13:47:03] <Subaraki> williewillus,
i'm letting it time out
L809[13:47:11] <Subaraki> seems i added it
client side too though
L810[13:47:21] <Subaraki> that's why the
entity id check went trough too
L811[13:47:43]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g140eswu2gmaf1.ipv6.telus.net)
L812[13:48:33] <williewillus> for players
when an effect runs out it should send a packet to remove it
L813[13:48:42] <williewillus>
EntityPlayerMP.onFinishedPotionEffect
L814[13:48:52] <williewillus> for other
entities, their potions aren't even synced to client in
vanilla
L815[13:50:11]
⇨ Joins: kinggoesgaming
(uid23106@id-23106.ealing.irccloud.com)
L816[13:50:14] <williewillus> for non
player entities only the color of the particles is synced to the
client
L817[13:53:49] <SatanicSanta> hm, so it
looks like CommandHelp, at least in 1.7, uses the server-side
command manager :|
L818[13:54:16] <PinkYoshi> quick
question
L819[13:54:54] <PinkYoshi> if I make two
copies of my class but completely exclude the logic about adding
entities to a list and checking player actions and I run the action
and list version on the server side will the client side be fine
without it? I'll be using sided proxy I think that's what I
want
L820[13:55:38] <PinkYoshi> certain things
execute twice and Im assuming that's because it's running my class
on two different threads
L821[13:59:33] ⇦
Quits: McJty (~jorrit@94-224-152-129.access.telenet.be) (Quit:
Leaving)
L822[14:01:54] ⇦
Quits: Girafi (Girafi@0x5552fcc5.adsl.cybercity.dk) ()
L823[14:05:41] ⇦
Quits: Keridos (~Keridos@212.201.68.136) (Read error: Connection
reset by peer)
L824[14:07:36] ⇦
Parts: malte0811 (~malte0811@p4FED0081.dip0.t-ipconnect.de)
())
L825[14:07:58] ⇦
Quits: KGS (~KGS@h-158-174-9-249.na.cust.bahnhof.se) (Quit:
Leaving)
L826[14:09:31] <williewillus> PinkYoshi:
sideproxy is not what you want :P
L827[14:09:32] <williewillus> you want
remote checks
L828[14:09:38] <williewillus> no need to
copy the code just use an if statemenet
L830[14:11:14] <PinkYoshi> Oh I did,
problem is if I set if remote false or whatever : if
(thisplayer.getEntityWorld().isRemote == false) {
L831[14:11:33] <PinkYoshi> sometimes
though when spawning active tnt, instead of say spiders and
sometimes even then it creates ghost entities on the client side
still
L832[14:11:56] <williewillus> then there's
not enough checks :P
L833[14:12:03] <williewillus> also you can
just use ! instead of == false
L834[14:12:05] <williewillus>
!world.isRemote
L836[14:12:51] <PinkYoshi> 600 spiders
should not crash the dev client though either.
L837[14:13:59]
⇨ Joins: Twipply
(~Twipply@cpc71441-mapp10-2-0-cust204.12-4.cable.virginm.net)
L838[14:14:36] <KissOfFate> is there
another way to do:
GlStateManager.bindTexture(Minecraft.getMinecraft().getTextureMapBlocks().getGlTextureId());
L839[14:15:36] <williewillus>
mc.renderEngine.bindTexture
L840[14:17:38] <KissOfFate> ah
okay..
L841[14:18:37]
⇨ Joins: PieGuy128
(~PieGuy128@mtrlpq5031w-lp130-01-76-65-43-212.dsl.bell.ca)
L842[14:18:46] <PinkYoshi> can someone
tell me why my client is crashing?
L844[14:18:50]
⇨ Joins: Ashlee
(~AshleeRee@static.236.64.76.144.clients.your-server.de)
L845[14:18:55] <PinkYoshi> This is my dev
client and it happens after my class does something
L846[14:19:10] <PinkYoshi> without firing
any of my own mod events the client's fine
L847[14:20:05] <williewillus> i mean the
exception tells you what you're doing wrong :P
L848[14:20:11] <KissOfFate> ^
L849[14:20:14] <williewillus> also show
code
L850[14:20:24] <barteks2x> does MC have a
method to check if Im running on the server thread?
L851[14:20:36] <PinkYoshi> ok here's
code
L852[14:20:38] <williewillus> barteks2x:
world.isRemote :P
L853[14:20:41] <barteks2x> I suspect some
of my code is being called from other thread
L854[14:20:53] <williewillus> barteks2x:
otherwise getEffectiveSide but that's less reliable
L855[14:21:02] <barteks2x> I actually want
to check exactly the thread
L857[14:21:08] <barteks2x> not the
effective side
L858[14:21:39] <barteks2x> if it's not
exactly the server thread, I want it to crash
L859[14:21:50] <williewillus> barteks2x:
Thread.current() == MinecraftServer.serverThread
L860[14:22:34] <williewillus> PinkYoshi: i
don't understand what this code is trying to do lol
L861[14:22:44] <PinkYoshi> how its meant
to work right now: When an arrow joins the game world, it's added
to an entity list. During every single tick update, the game checks
every arrow object in the array list of type entity. It then
compares it's old movement data with it's current tick movement
data. If it's stopped moving, it sets the arrow entity to dead then
creates 300
L862[14:22:44] <PinkYoshi> instances of a
class entity and sets their location in the world to a random
offset to the arrow's coordinates in 3d.
L863[14:22:56] <barteks2x> that became
big... if (Thread.currentThread() !=
FMLCommonHandler.instance().getMinecraftServerInstance().getServerThread())
{
L864[14:23:30] <PinkYoshi> In order to get
a reference to the player since the tick update doesn't accept a
reference to player, I subscribe to a playerinteract event and then
save the information of that player instance directly as a member
of the class itself so that I can localy reference it during the
tick update event.
L865[14:23:40] <williewillus> wut
L866[14:23:42] <PinkYoshi> all it's
supposed to do
L867[14:23:48] <PinkYoshi> is spawn 300
spiders when an arrow hits the ground
L868[14:23:51] <PinkYoshi> and it
works
L869[14:23:52] <PinkYoshi> but
L870[14:23:55] <PinkYoshi> it kinda
crashes totally.
L871[14:24:00] <williewillus> why do you
need a player for this?...
L872[14:24:06] <williewillus> not to
mention global mod state
L873[14:24:09] <PinkYoshi> to get a
reference to the world
L874[14:24:33] <barteks2x> I got that very
rare crash *again* that just tells be "something went wrong,
good luck figuring it out" and I suspect it's threading
issue
L875[14:24:45] <barteks2x> because it's
the most obvious thing that would cause it
L876[14:24:54] <williewillus> PinkYoshi:
you do realize there's a worldtickevent right
L877[14:25:03] <PinkYoshi> also
L878[14:25:06] <PinkYoshi> For TnT
spawning
L879[14:25:15] <PinkYoshi> I do need a
reference to the player for the parameter igniter
L880[14:25:27] <PinkYoshi> I don't think I
can pass null in there.
L881[14:25:31] <williewillus> what, no you
use the thrower/firer of the arrow
L882[14:25:34] <williewillus> and yes null
is allowed there
L883[14:25:43] <williewillus> who's the
igniter if a dispenser fires it?
L884[14:25:48] <PinkYoshi> oh ok
L885[14:26:12] <PinkYoshi> well anyway
it's better to get a reference to the player for other tricky
things
L886[14:26:17] <barteks2x> WHAT!?
java.lang.NoSuchMethodError:
net.minecraft.server.MinecraftServer.getServerThread()Ljava/lang/Thread;
L887[14:26:36] <PinkYoshi> I want to do
alot in one event such as place blocks, send chat messages, spawn
entities, move entities, handle entity ai, but all in one thing at
some point so that it's easier to do.
L888[14:26:43] <PinkYoshi> so I'm learning
the steps for those things
L889[14:26:53] <PinkYoshi> I'll probably
have a few subscribe events just to get and keep local references
to everything I need lol
L890[14:26:58] <williewillus> well, global
mod state is *terrible* for this
L891[14:27:06] <PinkYoshi> because in my
opinion those things shoulda been globally accesible to start
with
L892[14:27:09] <williewillus> right now,
what happens if there's more than one player?
L893[14:27:20] <PinkYoshi> I'll keep a
player list
L894[14:27:23] <williewillus> -.-
L895[14:27:25] <PinkYoshi> and use
onplayerjoinworld or something
L896[14:27:29] <PinkYoshi> to get a
reference to 'that' player
L897[14:27:35] <PinkYoshi> then compare
against UUIDS
L898[14:27:54] <williewillus> it'd do you
some good to organize this and break it up, and not leak memory
everywhere
L899[14:27:57] <PinkYoshi> i'm slowly
figuring out how minecraft is built and I dun like it
L900[14:28:10] <barteks2x> oh... that
method is SideOnly(SERVER)...
L901[14:28:13] <barteks2x> because
logic
L902[14:28:20] <williewillus> barteks2x:
just reflect the field :P
L903[14:28:27] <PinkYoshi> but uhh
L904[14:28:39] <PinkYoshi> I still don't
know why my client is crashing am I calling tick update too often
on the client side?
L905[14:28:43]
⇨ Joins: TomyLobo2
(~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de)
L906[14:28:58] <PinkYoshi> like to me
having 300 spiders shouldn't cause client/server communication
problems.
L907[14:29:15] <PinkYoshi> it should be
possible to spawn in 18 thousand mobs at once. in one tick.
L908[14:29:41] <PinkYoshi> how many ticks
does it take for the game to process entity.setdead
L909[14:29:47] <williewillus> except
you're running things on both sides
L910[14:29:49] <PinkYoshi> maybe it's not
setting my arrow to dead fast enough
L911[14:29:53] <williewillus> global state
is being trahsed by threads
L912[14:29:56] <williewillus> lots of
problems :P
L913[14:29:59] <PinkYoshi> well how do I
fix it
L914[14:30:04] <PinkYoshi> I have
world.isremote()
L915[14:30:10] <PinkYoshi> and I only want
this to happen on the server side
L916[14:30:33] <barteks2x> now that got
long... if (Thread.currentThread() !=
ReflectionHelper.getPrivateValue(MinecraftServer.class,
FMLCommonHandler.instance().getMinecraftServerInstance(),
"serverThread", "field_175590_aa")) {
L917[14:30:46] ⇦
Quits: TomyLobo (~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de)
(Ping timeout: 204 seconds)
L918[14:30:49] <PinkYoshi> wow
L919[14:31:09] <barteks2x> would have been
much simpler to juct check thread name...
L920[14:31:56] <PinkYoshi> so can someone
help me
L921[14:31:58] <PinkYoshi> with
siding?
L922[14:33:15] ⇦
Quits: Blarghedy (Blarghedy@50-90-116-51.res.bhn.net) (Killed
(NickServ (GHOST command used by
Guest97915!~Blarghedy@50-90-116-51.res.bhn.net)))
L923[14:33:19] <williewillus> read the
article again :P
L924[14:33:20]
⇨ Joins: Blarghedy
(~Blarghedy@50-90-116-51.res.bhn.net)
L925[14:33:38] <williewillus> your whole
mod as you sent it on pastebin is doable in just one method
L926[14:33:40] <williewillus> with no
fields
L927[14:33:47] <williewillus> <20
lines
L928[14:35:06] <williewillus> hints: use
worldtickevent, check its phase and side. you don't need to store
anything in lists
L929[14:35:40] <PinkYoshi> (There is
currently no way to check if arrows have impacted an object)
L930[14:35:56] <PinkYoshi> it'll be more
than 20 lines because of my condition for arrow movement
L931[14:36:10] <mezz> wood buttons detect
if an arrow has hit them
L932[14:36:19] <PinkYoshi> that's just
wood buttons.
L933[14:36:40] <PinkYoshi> arrows hitting
any block or entity but still existing count towards triggering
this.
L934[14:36:50] <williewillus> 1: Vec3d
lastPos = new Vec3d(arrow.lastTickPosX, arrow.lastTickPosY,
arrow.lastTickPosZ);
L935[14:36:55] <williewillus> 2: Vec3d
currentPos = arrow.getPositionVector();
L936[14:36:57] <PinkYoshi> any arrows,
sent by anything, dispensers, skeletons, wither, other
players
L937[14:36:58] <williewillus> 3: if
(currentPos.squareDistanceTo(lastPos) < THRESHOLD) {
L938[14:37:03] <williewillus> 3
lines
L939[14:37:32] <PinkYoshi> square distance
to will convert negative coordinates to positive ones? and then
compare properly?
L940[14:37:40] <williewillus> wut...
L941[14:37:42] <PinkYoshi> see, I don't
trust that code I can't see how it's comparing the distances
L942[14:37:43] <williewillus> it's just
the distance
L943[14:37:47] <williewillus> what
L944[14:37:49] <PinkYoshi> what's the
scale on it
L945[14:37:54] <williewillus> what does
that even mean?
L946[14:37:59] <williewillus> it's the
distance betwen two points
L947[14:38:01] <williewillus> distance
formula
L948[14:38:22] <williewillus> exceot
squared because square roots are expensive, so you just square your
threshold on the RHS
L949[14:38:33] <KissOfFate> If I move from
-5 to 0, the distance is 5
L950[14:38:33] <PinkYoshi> old(-100 300
500 ) new(-200 300 500) the distance for X dist should be
calculated here as a difference of positive 100.
L951[14:38:48] <williewillus> this is
basic euclidean distance, mojang's vector class works -.-
L952[14:38:54] <KissOfFate> ^
L953[14:38:59] <williewillus> if it didn't
lots of things would be broken in the game
L954[14:39:22] <PinkYoshi> yeah but what
if later I only want to compare say the Y distance.
L955[14:39:28] <PinkYoshi> i'd have to re
write it again
L956[14:39:35] <williewillus> ...
L957[14:39:37] <PinkYoshi> keeping it all
exposed like this gives me an easier way to change things
L958[14:39:44] <PinkYoshi> I'm just
experimenting right now
L959[14:39:46] <williewillus> NIH
syndrome
L960[14:40:20] <PinkYoshi> thanks for the
tip though it'll be useful to know I can do that when something is
final
L961[14:40:44] <PinkYoshi> I guess I just
don't want to end up with strange things like the output of that
comparison is 0.58164
L962[14:40:52] <williewillus> what
L963[14:41:12] <williewillus> the
"output of the comparison" is the distance^2 between the
two vectors, nothing else
L964[14:41:13] <PinkYoshi> nevermind,
it'll still be in block distance scale right?
L965[14:41:18] <williewillus> of
course
L966[14:41:24] <PinkYoshi> oh ok.
L967[14:45:37] <williewillus> anyways, I
just wrote it up and it's precisely 20 lines with nice whitespace,
in one method, and no fields
L968[14:45:39] <williewillus> so it's
possible
L969[14:45:42] <williewillus> and it
works
L970[14:46:09]
⇨ Joins: Javaschreiber1
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de)
L971[14:46:28] <williewillus> though,
forge could use an arrow impact event PR
L972[14:46:32] <williewillus> checking
motion isn't really precise
L973[14:46:43] ⇦
Quits: Javaschreiber1
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de) (Client
Quit)
L974[14:46:44] <williewillus> because if
you shoot straight up it'll trigger at the apex
L975[14:47:01] <KissOfFate> Arrow
Impact?
L976[14:47:02] <KissOfFate> wym?
L977[14:47:11] <williewillus> event for
when an arrow hits something
L978[14:47:19] <williewillus> there's one
for throwables I PR'ed a couple years ago
L979[14:47:22] <williewillus> but arrows
aren't EntityThrowable
L980[14:47:22] <williewillus> :P
L981[14:47:39] <KissOfFate> Isnt there an
entity collision
L982[14:47:46] <KissOfFate>
event.getEntity() instanceof Arrow
L983[14:47:53] <williewillus> entity
collision?
L984[14:48:03] <williewillus> don't think
there's such an event
L985[14:48:05] <KissOfFate> i must be
thinking of spigot
L986[14:48:14] <KissOfFate> In spigot
theres an EntityCollideEvent
L987[14:48:50] <PinkYoshi> how do i get
the UUID of a player instance?
L988[14:48:57] <williewillus>
getUniqueId
L989[14:49:00] <PinkYoshi> oh ok
L990[14:49:28] <williewillus> also:
anything you keep in a collection field is going to cause memory
leaks unless you go clean it out
L991[14:49:40] <williewillus> things don't
magically disappear from a collection when they're dead
L992[14:50:14]
⇨ Joins: arehman (~arehman@39.50.239.54)
L993[14:51:02] <PinkYoshi> well when I do
remove with a reference to the object (from the event) it bugs on
me?
L994[14:51:17] <PinkYoshi> rather I
mean
L995[14:51:43] <PinkYoshi> this is an
entity type (not casted to arrow)
L996[14:51:45] <PinkYoshi>
ee.setDead();
L997[14:51:45] <PinkYoshi>
entitylist.remove(ee);
L998[14:51:50] <PinkYoshi> but of type
arrow entity.
L999[14:51:54] <williewillus> i still
don't see what the list is for
L1000[14:51:55] <williewillus> you don't
need one
L1001[14:52:36] <PinkYoshi> because it
lets me force updates on the entity rather than waiting for the
right tick scheduling. I know minecraft sometimes doens't always
update every entity on every tick and I want my event to update
EVERY tick with a gaurentee so I keep a reference.
L1002[14:52:43] <PinkYoshi> that wasn't
the reason I did it in the first place but now it is.
L1003[14:53:08] <PinkYoshi> it's
basically forcing the tick handler to check every arrow entity in
the world that's loaded
L1004[14:53:13] <williewillus> what do
you mean "doesn't always update every entity on every
tick"
L1005[14:53:15] <PinkYoshi> as opposed to
waiting for minecraft to handle it however it does.
L1006[14:53:21] <williewillus> every
entity is always ticked if it's not in a lazy chunk
L1007[14:53:25] <PinkYoshi> as far as I
know things like wheat don't always update on every tick
either.
L1008[14:53:31] <williewillus> that's a
different kind of tick
L1009[14:53:34] <williewillus> those are
random update ticks
L1010[14:53:35] <PinkYoshi> and sometimes
other mobs don't move every tick
L1011[14:53:37] <williewillus> these are
game ticks
L1012[14:53:46] <williewillus> like which
ones? 0.o
L1013[14:54:12]
⇦ Quits: arehman (~arehman@39.50.239.54) (Ping timeout: 204
seconds)
L1014[14:56:11] <PinkYoshi> oh.
L1015[14:56:13] <PinkYoshi> hmm ok
L1016[14:57:33]
⇨ Joins: arehman (~arehman@39.50.255.15)
L1017[14:58:45]
⇨ Joins: Noppes
(~Noppes@ip56530f2e.direct-adsl.nl)
L1018[14:59:33] <PinkYoshi> I dont like
how minecraft doesn't expose certain things.
L1019[14:59:49] <PinkYoshi> i'm starting
to understand the bigger picture of how it's been structured.
L1020[14:59:56]
⇦ Quits: Seppon (~Noppes@ip56530f2e.direct-adsl.nl) (Ping
timeout: 180 seconds)
L1021[15:00:45]
⇦ Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g140eswu2gmaf1.ipv6.telus.net) (Ping
timeout: 383 seconds)
L1022[15:01:02] <KissOfFate> What do you
mean?
L1023[15:01:24] <PinkYoshi> When I do
other coding literally everything not set to private is
exposed.
L1024[15:02:11] <williewillus> it's
called encapsulation :P
L1026[15:02:30] <PinkYoshi> check out how
I design my classes
L1027[15:03:12] <mezz> that's not good
practice
L1028[15:03:26] <PinkYoshi> even the
journal object
L1029[15:03:27] <williewillus> no
encapsulation + not following language naming conventions
L1030[15:03:31] <williewillus> is what I
see :P
L1031[15:03:32] <PinkYoshi> is a member
of the player class for easy easy access
L1032[15:03:45] <PinkYoshi> in my game
class
L1033[15:03:46] <PinkYoshi> I do
this
L1034[15:03:47] <mezz> easy easy access
leads to spaghetti code
L1035[15:03:57] <mezz> you want puzzle
pieces, not spaghetti
L1037[15:04:24] <PinkYoshi> the game
class re-wraps alot of player class functions
L1038[15:04:30] <PinkYoshi> so rather
than having to get a player reference and then calling it from
that
L1039[15:04:38] <PinkYoshi> I can call it
through the game class with the player name and that's it
L1040[15:04:43] <barteks2x> does
Minecraft crash report count as uncaught exception for the
JVM?
L1041[15:04:49] <PinkYoshi> so that those
functions become a global system.
L1042[15:04:53] <KissOfFate> yeah well
there is reasons behind why things are closed Yoshi
L1043[15:05:06] <KissOfFate> Minecraft
Originally didn't want an "API" or easily
"accessible" classes
L1044[15:05:12] <KissOfFate> but
eventually they opened up to modding
L1045[15:05:33] <PinkYoshi> oh also
L1046[15:05:43] <PinkYoshi> my game class
has a list of type player
L1047[15:05:53] <barteks2x> nvm, this
isn't even pissible without compiling C code
L1048[15:05:55] <PinkYoshi> so all the
player stuff can technically be accessed like
L1049[15:06:09] <PinkYoshi>
game.playerlist[index].whatever is in player class
L1050[15:06:23] <PinkYoshi> With
minecraft everything has got to be a reference.
L1051[15:06:36] <PinkYoshi> I also didn't
realize they didn't want to have accesible classes
L1052[15:06:52]
⇦ Quits: arehman (~arehman@39.50.255.15) (Ping timeout: 204
seconds)
L1053[15:08:04] <PinkYoshi> I wish
minecraft's item stack was like this
L1055[15:08:29] <mezz> I wish I could
rewrite it my way too :P
L1056[15:08:38] <ghz|afk> ewh, lowercase
class name ;P
L1057[15:08:46]
⇦ Quits: TomyLobo2
(~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de) (Ping timeout:
204 seconds)
L1058[15:08:47] <KissOfFate> haha
L1059[15:09:17] <ghz|afk> ewh, lowercase
filenames for class names that aren't even lowercase
L1060[15:09:25] <KissOfFate> did you see
my messages by any chance ghz?
L1061[15:09:47] <PinkYoshi> g2g
L1062[15:09:50] <PinkYoshi> bye for
now
L1063[15:09:56] <mezz> o/
L1064[15:12:18] <KissOfFate> so is it
100% possible to use OBJ's for entities using the forge built-in
OBJ Loader, or will I need to write my own?
L1065[15:12:28] <ghz|afk> it's 100%
possible
L1066[15:12:29] <ghz|afk> I do it
L1067[15:12:34] <tterrag> the forge
loader just creates a baked model
L1068[15:12:36] <tterrag> if you can draw
a baked model, then yes
L1069[15:12:39] <ghz|afk> I gave you code
that does it ;P
L1070[15:13:12] <KissOfFate> yeah but its
hard to find the difference @ghz because like i dont understand
openGL so i tried copying your stuff and i couldn't get it to work
properly lol
L1071[15:14:14] <KissOfFate> oh wait you
made ToolBelt? I was the one who asked you to do the select on
hover instead of clicking on it xD
L1072[15:14:26] <ghz|afk> ah, heh
L1073[15:14:36] <ghz|afk> and yeah sorry
I forget to remove my |afk
L1074[15:14:36] <ghz|afk> ;P
L1075[15:15:59] <KissOfFate> its okay, i
just trust you frequently look at the irc
L1076[15:16:00] <KissOfFate> haha
L1077[15:17:06]
⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Remote host
closed the connection)
L1078[15:19:07]
⇦ Quits: Necro
(~Necro@p200300700D1F384018ED9BD029490DE9.dip0.t-ipconnect.de)
(Ping timeout: 383 seconds)
L1079[15:19:20] <KissOfFate> so I have
your code ghz|afk but do you have an example of an
EntityLiving?
L1080[15:19:42] <ghz|afk> I don't see how
the entity being an EntityLiving makes any difference
L1081[15:19:50] <KissOfFate> it
does
L1082[15:19:53]
⇨ Joins: Necro
(~Necro@p200300700D1F38FF0CD7A5B53554ACA8.dip0.t-ipconnect.de)
L1083[15:20:04] <KissOfFate> I have a
model for my armour that has a texture and 100% works
L1084[15:20:14] <ghz|afk> but yes
L1085[15:20:18] <ghz|afk> the renderer I
linked earlier
L1086[15:20:22] <KissOfFate> I use the
same exact code on (model & texture) on an EntityLiving
L1087[15:20:22] <ghz|afk> is a living
entity
L1088[15:20:29] <KissOfFate> and it
doesnt work
L1090[15:20:37] <ghz|afk> itworks on my
mod ;P
L1091[15:20:48] <KissOfFate> then im just
dumb >_>
L1093[15:21:11] <ghz|afk> (class
EntityAmbientCreature extends EntityLiving implements
IAnimals)
L1094[15:21:48] <ghz|afk> okay since you
said you don't really know any opengl, I'll try to explain HOW it
works
L1095[15:22:15] <KissOfFate> I'll just
copy and paste and try to see if I can get your Entity to work
seperately in my mod and then try to transfer it over
L1096[15:22:47] <ghz|afk> if that's waht
you want to do:
L1098[15:22:48] <KissOfFate> oh i think
we've confused the issue
L1099[15:22:55] <KissOfFate> because I'm
bad at explaining
L1101[15:23:16] <KissOfFate> The model
renders and I can see the model in-game. Its just the texture
doesn't load at all anywhere no matter how I do it
L1102[15:23:27] <ghz|afk> hmm
L1103[15:23:37] <ghz|afk> do you have an
event handler for TextureStitchEvent.Pre?
L1104[15:23:53] <KissOfFate> Yeah
L1105[15:24:04] <ghz|afk> does it
run?
L1106[15:24:22] <KissOfFate>
event.getMap().registerSprite(new ResourceLocation(MODID,
"textures/entity/fish/fish_0"));
L1107[15:24:30] <ghz|afk> does that line
get executed? ;P
L1108[15:24:40] <ghz|afk> oh you don't
want textures/ in there
L1109[15:24:44] <ghz|afk> just
entity/fish/...
L1110[15:26:53] <ghz|afk> also
L1111[15:27:00] <ghz|afk> no wait
nevermind
L1112[15:29:00] <KissOfFate> alright im
testing now
L1113[15:30:09] <KissOfFate> [16:29:57]
[Client thread/INFO]: [STDOUT]: TextureStitchEvent RAN
L1115[15:31:55]
⇨ Joins: TomyLobo2
(~TomyLobo@2a02:8109:87c0:20c:2803:e005:985b:dd5c)
L1116[15:31:59]
⇦ Quits: Everseeking
(~Everseeki@pool-100-6-95-214.pitbpa.fios.verizon.net) (Quit: Big
Gulps, huh? Alright... Welp, see ya later)
L1117[15:32:06] ***
PaleoCrafter is now known as PaleOff
L1118[15:33:13] <ghz|afk> and you return
TextureMap.LOCATION_BLOCKS_TEXTURE from the getEntityTexture
method?
L1119[15:34:02]
⇨ Joins: Meronat
(uid190493@id-190493.highgate.irccloud.com)
L1120[15:34:21] <KissOfFate> no
L1121[15:34:28] <ghz|afk> you should
;P
L1122[15:35:11]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1123[15:37:26] <Necro> my mod just
reached 25k downloads! :D
L1124[15:37:41]
⇨ Joins: cjm721
(~cjm721@mobile-107-77-172-52.mobile.att.net)
L1125[15:37:44] <KissOfFate> nice!
L1126[15:37:50] <KissOfFate> ghz|afk it
didnt change anything .-.
L1127[15:38:16] <ghz|afk> do you ahve a
link to your code?
L1129[15:40:16] <KissOfFate> The model is
ModelFishOBJ
L1130[15:40:18] <KissOfFate> not
ModelFish
L1131[15:40:46] <KissOfFate> thats
everything there
L1132[15:41:02] <KissOfFate> models are
under models, rendering stuff is under rendering :p not sure what
else you would need
L1133[15:42:17] <ghz|afk> oh you restored
all the display list stuff
L1134[15:42:50] <ghz|afk> remove that
bindTexture you have in there
L1135[15:43:12] <KissOfFate> want me to
remove the display lists stuff too
L1136[15:43:17] <KissOfFate> or just the
bind texture?
L1137[15:43:23] <ghz|afk> try first with
the bind
L1138[15:43:28] <ghz|afk> I mean removing
jnust the bind
L1139[15:43:53] <Necro> !gm
func_181617_a
L1140[15:43:54] <ghz|afk> but
really
L1141[15:44:03] <ghz|afk> I don't see the
point in using RenderLiving and all that crap
L1142[15:44:15] <KissOfFate> well I
generified it if you saw
L1143[15:44:15] <ghz|afk> when you can
just do the call to render the model straight in a custom
renderer
L1144[15:44:56] <ghz|afk> yo uare
basically adding a second layer of mess, just to try very hard to
keep the original mess in place
L1145[15:45:26] <KissOfFate> still black
and purple with bindTexture removed
L1146[15:46:11]
⇦ Quits: TechnicianLP
(~Technicia@p4FE1CB8D.dip0.t-ipconnect.de) (Ping timeout: 383
seconds)
L1147[15:48:06]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net)
L1148[15:48:54] <ghz|afk>
KissOfFate:
L1150[15:48:59] <ghz|afk> this is all
your renderer could be
L1151[15:49:08] <ghz|afk> maybe it's
missing some GlStateManager.translate/scale/rotate
L1152[15:49:13] <ghz|afk> but those would
be minor details
L1153[15:49:29] <ghz|afk> trying to
extend RenderLiving and such is just adding more crap to the mess,
as I said
L1154[15:49:39] <ghz|afk> oops
getEntityTexture shouldn't return null
L1155[15:49:49] <ghz|afk> no wait it's
nullable
L1156[15:49:51] <ghz|afk> it CAN return
null
L1157[15:50:30] <ghz|afk> hmmm
L1158[15:50:35] <ghz|afk> and since your
fish isn't translucent
L1159[15:50:39] <ghz|afk> you wouldn't
need blending either
L1160[15:51:16] <ghz|afk> updated without
blending setting
L1161[15:52:20] <tterrag> you're still
afk :P
L1162[15:52:35] <KissOfFate> ah okay so
I'm just gonna try that
L1163[15:52:47] <ghz|afk> yeah not worth
changing it now
L1164[15:52:52] <ghz|afk> I'll go to
sleep in an hour or so ;P
L1165[15:53:02] <KissOfFate> so how do I
register this renderer
L1166[15:53:07] <KissOfFate> im only used
to RenderFactories
L1167[15:53:08] <KissOfFate> haha
L1168[15:53:38] <ghz|afk>
RenderingRegistry.registerEntityRenderingHandler(EntityFish.class,
RenderFish::new);
L1169[15:53:43] <ghz|afk> if you use
java8 in your mod
L1170[15:54:14] <ghz|afk> IRenderFactory
is a single-method interface, so it can accept a lambda or method
reference
L1171[15:55:12] <KissOfFate> ah so where
do I get objModel from? I just specify it?
L1172[15:55:27] <ghz|afk> yeah I skipped
that part
L1173[15:55:29] <ghz|afk> since you
already did it
L1174[15:57:22] <KissOfFate> I already
did that part?
L1175[15:58:38] <ghz|afk> yes?
L1177[16:01:32]
⇨ Joins: MonkeyTyrant
(~MonkeyTyr@blk-212-75-47.eastlink.ca)
L1178[16:03:33] <KissOfFate> .-. so how
do I get that to my renderFish class?
L1179[16:04:07] <KissOfFate> oh
wait
L1180[16:04:09] <KissOfFate> im dumb
nvm
L1181[16:05:31] <KissOfFate> eh im too
confused at this point to even want to worry about it anymore
L1182[16:06:48] <KissOfFate> i think i
got it
L1183[16:07:53]
⇨ Joins: quadraxis
(~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L1184[16:08:54]
⇦ Quits: MonkeyTyrant (~MonkeyTyr@blk-212-75-47.eastlink.ca)
(Ping timeout: 383 seconds)
L1186[16:11:02] <ghz|afk> oh please don't
load the model in the render function!
L1187[16:11:08] <ghz|afk> do it in the
constructor like you did in the other one!
L1188[16:11:27]
⇦ Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Read
error: Connection reset by peer)
L1189[16:11:41] <KissOfFate> right, sorry
lol I totally zoned out on that
L1191[16:14:01] <KissOfFate> ah
L1192[16:14:09] <KissOfFate> I moved the
objModel to the constructor
L1193[16:14:13] <KissOfFate> now its back
to black and purple
L1194[16:14:45]
⇨ Joins: Hgreb
(~Hgrebnedn@d8D872A6E.access.telenet.be)
L1195[16:15:11] <ghz|afk> I give up
;P
L1196[16:15:19] <KissOfFate> I know its
probably something stupidly simple lol
L1197[16:15:27] <ghz|afk> I'm too tired
to think right now
L1198[16:15:27] <ghz|afk> ;P
L1199[16:15:31] <KissOfFate> xD
L1200[16:15:45] <KissOfFate> I'm fully
awake amped up on Energy Drinks and I still can't figure this
out..
L1201[16:16:01] <KissOfFate> I mean it
does this
L1202[16:16:01] <KissOfFate> [17:13:37]
[Client thread/INFO]: Created: 2048x1024 textures-atlas
L1203[16:16:34] <KissOfFate> well the
texture stitching just must not be right
L1204[16:16:55]
⇦ Quits: Hgrebnednav_
(~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping timeout: 186
seconds)
L1205[16:17:41] <KissOfFate> thanks for
taking so much of your time to help me, I'm sorry I haven't been
the best of people to help ghz|afk
L1206[16:17:58] <ghz|afk> don't worry,
you aren't in the "worst" group ;P
L1207[16:19:22] <KissOfFate> haha, well I
mean I'm not sure what else to try... at this point everything I've
used is being completely rewritten lol
L1208[16:20:12]
⇨ Joins: Keridos (~Keridos@ironhide.stw-bonn.de)
L1209[16:21:24] <KissOfFate> I might just
have to copy Lycanites obj system >_>
L1210[16:21:34] <KissOfFate> and see if I
can get it to work with that
L1211[16:23:27] <ghz|afk> thing is, it
SHOULD work
L1212[16:23:30] <ghz|afk> I mean
L1213[16:23:34] <ghz|afk> if everything
was done correctly
L1214[16:23:41] <ghz|afk> something must
be wrong, and it can't be anything huge
L1215[16:23:54] <ghz|afk> as I said, I do
ahve working entities which draw using .obj models
L1216[16:24:03] <KissOfFate> yeah
L1217[16:24:06] <ghz|afk> and one of them
happens to be a living entity so it can't be that
L1218[16:24:09] <KissOfFate> Its
something thats my problem
L1219[16:24:31] <ghz|afk> so maybe you
can find someone else who isn't as tired as I am ;p
L1220[16:25:03] ***
MrKickkiller is now known as MrKick|Away
L1221[16:27:18]
⇨ Joins: MonkeyTyrant
(~MonkeyTyr@blk-212-75-47.eastlink.ca)
L1222[16:28:13] <KissOfFate> ghz|afk if I
were to use your ModelHandle.of() could I use that to replace
objModel
L1223[16:28:31] <ghz|afk> yes the
ModelHandle works as a cache
L1224[16:28:39] <ghz|afk> to avoid
re-baking and such
L1225[16:28:44] <ghz|afk> it's not really
that useful in y our case
L1226[16:28:48] <ghz|afk> but you can use
it
L1227[16:28:57]
⇦ Quits: MonkeyTyrant (~MonkeyTyr@blk-212-75-47.eastlink.ca)
(Client Quit)
L1228[16:29:29] <ghz|afk> anyhow, gonna
jump into bed
L1229[16:29:31] <ghz|afk> night ppl
L1230[16:29:33] *
ghz|afk poofs
L1231[16:34:40] <williewillus> where in
the code is the logic for baby zombies to control the chickens they
ride?
L1232[16:34:43] <williewillus> can't find
it x.x
L1233[16:35:12] <williewillus> oh nvm
found it
L1234[16:35:20] <williewillus>
EntityLiving.updateEntityActionState
L1235[16:37:09] <barteks2x> is it
possible to enable f3 debug screen... without pressing f3?
L1236[16:37:27] <williewillus> set the
boolean that f3 toggles? :P
L1237[16:37:41] <williewillus>
gameSettings.showDebugInfo
L1238[16:38:02] <barteks2x> my laptop
keyboard seems to be failing and I need Fn key to use F1-12, and Fn
key doesn't work right now
L1239[16:38:28] <williewillus> is it
rebindable?
L1240[16:39:06] <barteks2x> in bios
settings I can remove the need for Fn
L1241[16:39:22] <barteks2x> but also left
and up arros don't work (it randomly starts working again)
L1242[16:39:59] <barteks2x> oh... if that
key is rebindable in MC settings?
L1243[16:40:04] <barteks2x> I alreadyd
did it with debugger
L1244[16:40:24]
⇦ Quits: Hgreb (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping
timeout: 201 seconds)
L1245[16:40:39] <barteks2x> um... up
arrow to use command history probably isn't rebindable
L1246[16:47:47] <williewillus> how do I
make an entity able to be attacked by its attacker? 0.o
L1247[16:47:55] <williewillus> I'm
returning true from Entity.canRiderInteract
L1248[16:47:59] <williewillus> but sword
swings still go through it
L1249[16:49:41]
⇨ Joins: KGS
(~KGS@h-158-174-9-249.na.cust.bahnhof.se)
L1250[16:49:46]
⇦ Quits: KissOfFate
(~KissOfFat@pool-173-53-76-122.rcmdva.fios.verizon.net) (Quit:
Leaving)
L1251[16:50:26]
⇦ Quits: TomyLobo2
(~TomyLobo@2a02:8109:87c0:20c:2803:e005:985b:dd5c) (Ping timeout:
180 seconds)
L1252[17:01:51] <williewillus> gm
Entity.canRiderInteract
L1253[17:01:56] <williewillus> !gm
Entity.canRiderInteract
L1254[17:02:02] <williewillus> oh it's
just a bug with forge
L1255[17:02:08] <williewillus> calling it
on the wrong entity
L1256[17:03:52]
⇦ Quits: Javaschreiber
(~Thunderbi@88-209-32-73.nga.highspeed-baumann.de) (Quit:
Javaschreiber)
L1257[17:07:36] <barteks2x> is it really
not possible to create world with only "Extreme Hilld M"
biome in vanilla?
L1258[17:07:46] <barteks2x> *Hills
L1259[17:14:50]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g0rp7euw686c07.ipv6.telus.net)
L1260[17:18:27]
⇦ Quits: PieGuy128
(~PieGuy128@mtrlpq5031w-lp130-01-76-65-43-212.dsl.bell.ca) (Remote
host closed the connection)
L1261[17:22:24]
⇦ Quits: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net) (Ping
timeout: 204 seconds)
L1262[17:30:25] ***
diesieben|away is now known as diesieben07
L1263[17:40:01] ***
diesieben07 is now known as diesieben|away
L1264[17:49:23]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1265[17:51:19]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net)
L1266[17:53:59] ***
RichardG_ is now known as RichardG
L1267[17:55:17]
⇦ Quits: cjm721 (~cjm721@mobile-107-77-172-52.mobile.att.net)
(Remote host closed the connection)
L1268[17:57:14]
⇨ Joins: cjm721
(~cjm721@mobile-107-77-172-78.mobile.att.net)
L1269[17:58:41]
⇦ Quits: Cojo (~Cojo@2606:a000:4c46:8d00:14a6:6ec1:a9f:aa6a)
(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.)
L1270[18:00:23]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1271[18:04:34] <williewillus> !sp
p_142018_1_ target
L1272[18:04:40] <williewillus> !sp
p_142018_2_ owner
L1273[18:05:08]
⇦ Quits: lashtear (~lashtear@75-164-207-124.ptld.qwest.net)
(Quit: Leaving)
L1274[18:05:36] ***
diesieben|away is now known as diesieben07
L1275[18:06:55]
⇨ Joins: Gil
(uid147942@id-147942.hathersage.irccloud.com)
L1276[18:08:25]
⇨ Joins: lashtear
(~lashtear@75-164-207-124.ptld.qwest.net)
L1277[18:13:36]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net)
L1278[18:14:09] ***
diesieben07 is now known as diesieben|away
L1279[18:22:27] <williewillus> !gf
AbstractSkeleton.aiArrowAttack
L1280[18:31:43]
⇦ Quits: Blarghedy (~Blarghedy@50-90-116-51.res.bhn.net)
(Killed (NickServ (GHOST command used by
Guest97915!Blarghedy@50-90-116-51.res.bhn.net)))
L1281[18:31:47]
⇨ Joins: Blarghedy
(Blarghedy@50-90-116-51.res.bhn.net)
L1282[18:34:29]
⇦ Quits: Redfoxmoon (~Red@177.92-221-236.customer.lyse.net)
(Ping timeout: 201 seconds)
L1283[18:37:07] <barteks2x> I found a
100% reliable way to reproduce my rare-impossible-crash :D
L1284[18:37:46]
⇦ Quits: Necro
(~Necro@p200300700D1F38FF0CD7A5B53554ACA8.dip0.t-ipconnect.de)
(Ping timeout: 383 seconds)
L1285[18:43:18] <PinkYoshi> WillieWillus
the advice you gave me
L1286[18:43:20] <PinkYoshi> doesn't
work
L1287[18:43:30]
⇦ Quits: AshIndigo
(uid202308@id-202308.charlton.irccloud.com) (Quit: Connection
closed for inactivity)
L1288[18:43:48] <williewillus> what
exactly?
L1289[18:44:03] <PinkYoshi> To use
worldtickevent for updating arrows
L1290[18:44:09] <PinkYoshi> and checking
their velocities
L1291[18:44:12] <williewillus> i have a
100% working version of what you described several hours ago right
here so I don't know what you mean by "doesn't work"
:P
L1292[18:44:25] <williewillus> describe
"doesn't work"
L1293[18:44:26] <PinkYoshi> I can't
extract an instanceof EntityArrow from worldtickevent
L1294[18:44:33] <williewillus> ...you
have a world
L1295[18:44:43] <williewillus> world has
a method to get you all entities of a certain type
L1297[18:46:11]
⇨ Joins: Redfoxmoon
(~Red@177.92-221-236.customer.lyse.net)
L1298[18:46:13] <williewillus> wat are
you even doing
L1299[18:46:15] <williewillus> evt is an
event
L1300[18:46:17] <williewillus> not an
entity :P
L1301[18:46:24] <williewillus> get rid of
that getEffectiveSide and use world.isRemote
L1302[18:46:24] <PinkYoshi> The method
you gave me requires extra work you didn't explain
L1303[18:46:32] <PinkYoshi> I did use
world.isremote and it crashed me
L1304[18:46:39] <williewillus> of course,
because I'm not going to handhold everything
L1305[18:46:39] <PinkYoshi> Using
getEffectiveSide fixed the crash
L1306[18:46:52] <PinkYoshi> well you
could have atleast told me I'd still need to get a list of entities
from in the world.
L1307[18:47:02] <williewillus> you don't
need to build that list yourself
L1308[18:47:03] <PinkYoshi> entirely
leaving that detail out sends me on a blind path
L1309[18:47:19] <williewillus> I mean, I
didn't know that method existed either. just a little
experimentation led me to it...
L1310[18:47:22] <PinkYoshi> no but I need
to know it exists and I need to know there's a step you didn't fill
in for me and I need a general idea of what that step would
be
L1311[18:47:34] <PinkYoshi> overall
though
L1312[18:47:44] <PinkYoshi> Isn't it more
inefficient to get a whole list of all active arrows?
L1313[18:47:51] <PinkYoshi> than to
simply check the entity world event
L1314[18:47:53] <PinkYoshi> and cast it
to arrow?
L1315[18:48:20] <williewillus> what even
is a "entity world event"
L1316[18:48:33] <williewillus> also, get
it working first then optimize :P
L1317[18:48:37] <PinkYoshi> Ughh
L1318[18:48:44] <PinkYoshi> so I had
something working and I'm tearing it apart
L1319[18:48:51] <PinkYoshi> but does it
matter how it does what it does even?
L1320[18:48:58] <williewillus> yes
L1321[18:49:01] <PinkYoshi> okay
then.
L1322[18:49:09] <williewillus> things
that appear to work may not work reliably
L1323[18:49:13] <PinkYoshi> So what type
is the list of entities in the world? is it type Entity?
L1324[18:49:14] ***
LordFokas|out is now known as LordFokas
L1325[18:49:20] <williewillus> look at
the signature of the method
L1327[18:50:53] <PinkYoshi> soooo
L1328[18:51:04] <PinkYoshi> this tells me
nothing I can't understand this syntax it looks like the entity
parent class
L1329[18:51:07] <PinkYoshi> but what do i
actually pass to this?
L1330[18:53:38] <williewillus> ignore the
type parameters at first. It wants the Class of the entities you
want, and a predicate to filter them
L1331[18:53:46] <williewillus> which is
exactly what ? extends Entity means
L1332[18:54:05] <PinkYoshi> so I put ?
extends Entity then the class name?
L1333[18:54:08] <williewillus> no
L1334[18:54:11] <williewillus> you just
pas the class :P
L1335[18:54:14] <williewillus>
*pass
L1336[18:54:34] <williewillus> "give
me a Class representing something that extends Entity and a
Predicate filtering things that extend Entity"
L1337[18:54:50] <PinkYoshi> it says
Expression expected.
L1338[18:54:54] <PinkYoshi> it isn't
happy with this -.-
L1339[18:54:57] <williewillus> a Class is
an object
L1340[18:55:18] <williewillus>
EntityArrow.class is an expression yielding the Class object
associated with EntityArrow
L1341[18:55:30] <williewillus> do a find
usages on the method and see how vanilla uses it
L1342[18:55:55] <PinkYoshi> I don't
understand this I just want an example of what to put in the
Parenthesis
L1343[18:56:05] <PinkYoshi> There's
something I'm missing between the ilnes
L1344[18:56:06] <PinkYoshi> lines
L1345[18:56:19] <williewillus> > do a
find usages on the method and see how vanilla uses it
L1346[18:56:24] <williewillus> ^ there's
your example
L1347[18:58:07] <PinkYoshi> find usages
finds nothing
L1348[18:58:11] <PinkYoshi> just 1 case
and that's mine
L1349[18:58:14] <williewillus> search
projects + libraries
L1350[19:01:14] <PinkYoshi> could have
just outrightly told me to use EntitySelectors followed by . to get
a selection of options for the second param >.> why you make
me do extra work? When the result is the same and I would have seen
the example anyway?
L1351[19:01:26] <PinkYoshi> but also
thank you for telling me how to do that.
L1352[19:02:52]
⇨ Joins: Upthorn
(~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net)
L1353[19:03:45] <quadraxis> is it worth
having a more general impact event for all projectiles?
L1354[19:03:55] <williewillus> because
the answer is not always "Type entityselectors and a
dot"
L1355[19:04:23] <williewillus> I don't
"make you do extra work", I'm just not handholding
through literally every line
L1356[19:04:31] <williewillus> quadraxis:
I mean, there is one for throwables
L1357[19:04:38] <williewillus> but for
whatever reason arrows aren't throwables
L1358[19:04:43] <williewillus> it's
probably worth adding one
L1359[19:05:05] <quadraxis> yeah but
there's also fireballs, arrows etc
L1360[19:05:22] <barteks2x> wtf does that
mean when trying to run BON2? java.lang.NumberFormatException: For
input string: "banana"
L1361[19:05:55] <quadraxis> the check is
always the same, but vanilla names all the methods differently,
instead of having something in IProjectile >_>
L1362[19:06:17]
⇦ Quits: cjm721 (~cjm721@mobile-107-77-172-78.mobile.att.net)
(Remote host closed the connection)
L1363[19:07:48] <quadraxis> actuall these
aren't all IProjectile anyway >_>
L1364[19:08:15] <PinkYoshi> Why isn't
thing letting me do a for loop on the class now that I have the
class list
L1365[19:08:38] <barteks2x> I have the
latest bon2 and it crashes at startup with such strange
exception...
L1366[19:08:39] <PinkYoshi>
List<EntityArrow> WorldEntities =
evt.world.getEntities(EntityArrow.class,
EntitySelectors.IS_ALIVE);
L1367[19:09:03] <PinkYoshi> it wants the
foreach class to be of type java.lang.obj
L1368[19:09:10] <PinkYoshi> and refuses
to accept EntityArrow as the type for my for loop
L1369[19:11:27]
⇨ Joins: cjm721
(~cjm721@mobile-107-77-172-48.mobile.att.net)
L1370[19:14:18] <barteks2x> what... I
have 2 the same versions of BON2 that have different
checksums
L1371[19:14:37] <barteks2x> one works,
the other doesn't
L1372[19:15:33]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-214-18.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1373[19:17:22] <PinkYoshi> ok it looks
like it might work finally.. testing now
L1374[19:19:59] <PinkYoshi> ok on the
plus side no crashes
L1376[19:20:02] <PinkYoshi>
downside.
L1377[19:20:12] <PinkYoshi> The event
doesn't stop spawning spiders once it's triggered
L1378[19:20:25] <PinkYoshi> I might know
why
L1379[19:28:59] <PinkYoshi> Yes I fixed
it. Lol so if I forget to set the entity as dead
L1380[19:29:03] <PinkYoshi> it keeps
happening.
L1381[19:31:04]
⇦ Quits: cjm721 (~cjm721@mobile-107-77-172-48.mobile.att.net)
(Remote host closed the connection)
L1382[19:32:04]
⇨ Joins: cjm721
(~cjm721@mobile-107-77-172-45.mobile.att.net)
L1383[19:32:48] <PinkYoshi> lol omg,
thanks williewillus
L1384[19:32:53] <PinkYoshi> it's alot
more stable now :D
L1385[19:37:42]
⇦ Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g0rp7euw686c07.ipv6.telus.net) (Ping
timeout: 383 seconds)
L1386[19:38:39]
⇦ Quits: kinggoesgaming
(uid23106@id-23106.ealing.irccloud.com) (Quit: Connection closed
for inactivity)
L1387[19:39:14]
⇦ Quits: cjm721 (~cjm721@mobile-107-77-172-45.mobile.att.net)
(Ping timeout: 201 seconds)
L1388[19:44:16] <williewillus> no
prob
L1389[19:53:13]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-210-223.dsl.emhril.sbcglobal.net)
L1390[19:55:15]
⇨ Joins: williewillus_
(~williewil@cpe-24-28-24-13.austin.res.rr.com)
L1391[19:55:55]
⇨ Joins: airbreather_
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L1392[19:56:51]
⇦ Quits: williewillus
(~williewil@cpe-24-28-24-13.austin.res.rr.com) (Killed (NickServ
(GHOST command used by williewillus_)))
L1393[19:56:59] ***
williewillus_ is now known as williewillus
L1394[19:57:34]
⇦ Quits: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com) (Ping timeout: 204
seconds)
L1395[20:00:03]
⇦ Quits: williewillus
(~williewil@cpe-24-28-24-13.austin.res.rr.com) (Client
Quit)
L1396[20:06:53]
⇦ Quits: afdw (~afdw@109.111.24.224) (Ping timeout: 200
seconds)
L1397[20:10:00]
⇨ Joins: cjm721
(~cjm721@mobile-107-77-172-43.mobile.att.net)
L1398[20:10:10]
⇨ Joins: SirWill
(~SirWill@static.168.103.243.136.clients.your-server.de)
L1399[20:13:08]
⇨ Joins: TTFTCUTS (~ttftcuts@ns3366511.ovh.net)
L1400[20:19:09]
⇨ Joins: afdw (~afdw@80.80.194.25)
L1401[20:19:58] <PinkYoshi> Help, I can't
spawn skeletons that have bows.
L1402[20:20:23] <PinkYoshi> I'm trying to
figure out if I have to modify their inventory yet itemstack access
(minecraft.net.item.itemstack) is private access.
L1403[20:23:28] <LordFokas> isn't it just
skelly.setHeldItem(bowItemStack); ?
L1404[20:27:59] <PinkYoshi> how do I
create a bow item stack?
L1405[20:28:18] <PinkYoshi> I've been
trying to figure out how to add a net.minecraft.item.item.ItemBow
to an itemstack
L1406[20:28:20]
⇦ Quits: cjm721 (~cjm721@mobile-107-77-172-43.mobile.att.net)
(Remote host closed the connection)
L1407[20:32:33]
⇨ Joins: Abastro (~Abastro@143.248.189.97)
L1408[20:41:59]
⇦ Quits: KGS (~KGS@h-158-174-9-249.na.cust.bahnhof.se) (Ping
timeout: 186 seconds)
L1409[20:52:45] <DemonWav> cpw ah, so you
DO know about my intellij plugin :p
L1410[20:53:40] <PinkYoshi> I guess I
figured it out, I think.
L1411[20:57:59]
⇦ Quits: Cast0077
(~Cast0077@24-151-68-108.dhcp.nwtn.ct.charter.com) (Quit:
Poof)
L1412[21:00:07]
⇦ Quits: Wastl2 (~Wastl2@x4e3456ab.dyn.telefonica.de) (Ping
timeout: 186 seconds)
L1413[21:01:26]
⇦ Quits: h5h77
(~h5h77@ip1f10331f.dynamic.kabel-deutschland.de) (Remote host
closed the connection)
L1414[21:03:02]
⇨ Joins: Wastl2
(~Wastl2@x4e34908e.dyn.telefonica.de)
L1415[21:06:12]
⇨ Joins: sinkillerj
(~sinkiller@nc-67-232-10-214.dhcp.embarqhsd.net)
L1416[21:09:04] <PinkYoshi> nope, I can
not seem to give a skeleton a bwo
L1417[21:09:05] <PinkYoshi> bow
L1419[21:26:28]
⇨ Joins: arehman (~arehman@124.29.237.1)
L1420[21:30:50]
⇦ Quits: Abastro (~Abastro@143.248.189.97) (Read error:
Connection reset by peer)
L1421[21:37:16]
⇨ Joins: cjm721
(~cjm721@mobile-107-77-172-51.mobile.att.net)
L1422[21:37:41] <cjm721> where exactly is
the McpMappings.json downloaded from. Stupid phone tether again and
I forgot to bookmark that page
L1424[21:44:10] <mezz> has anyone here
gotten junit tests set up for their project and added junit as a
dependency in their gradle?
L1425[21:50:37]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g03jauoxd11xcj.ipv6.telus.net)
L1426[21:51:46]
⇨ Joins: Abastro (~Abastro@143.248.189.97)
L1427[21:53:00] <mezz> figured it out,
just need to add this to dependencies: testCompile
'junit:junit:4.12'
L1428[22:01:07]
⇦ Quits: Twipply
(~Twipply@cpc71441-mapp10-2-0-cust204.12-4.cable.virginm.net)
(Quit: Leaving)
L1429[22:03:03]
⇦ Quits: Lathanael|Away
(~Lathanael@p54961E77.dip0.t-ipconnect.de) (Ping timeout: 186
seconds)
L1430[22:07:32]
⇨ Joins: McJty
(~jorrit@94-224-152-129.access.telenet.be)
L1431[22:07:46] <LordFokas> PinkYoshi,
you gave them something, it's a start
L1432[22:08:13] <LordFokas> new
ItemStack(Item, amount) I think is the correct constructor
L1433[22:09:00] <LordFokas> in your case
should be something like new ItemStack(Items.bow, 1) I
believe
L1434[22:09:20] <PinkYoshi> Ohhh!
L1435[22:09:32] <LordFokas> haven't
really modded since 1.7.10, I've been attempting to pick that back
up, so don't quote me on this :p
L1436[22:10:27]
⇨ Joins: Lathanael|Away
(~Lathanael@p54961E96.dip0.t-ipconnect.de)
L1437[22:12:16] ***
LordFokas is now known as LordFokas|Zzz
L1438[22:18:12]
⇦ Quits: Abastro (~Abastro@143.248.189.97) (Read error:
Connection reset by peer)
L1439[22:22:30] <killjoy1> LordFokas|Zzz,
new ItemStack(Items.BOW)
L1440[22:38:11]
⇦ Quits: Brokkoli (~Brokkoli@p5B23CC84.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))
L1441[22:53:18]
⇦ Quits: fatguylaughing (~fatguylau@worx01.meridian-ds.com)
(Read error: Connection reset by peer)
L1442[22:53:46]
⇨ Joins: fatguylaughing
(~fatguylau@worx01.worxco.com)
L1443[22:55:32]
⇦ Quits: Keridos (~Keridos@ironhide.stw-bonn.de) (Ping
timeout: 204 seconds)
L1444[22:55:32]
⇦ Quits: Marenthyu (~Marenthyu@marenthyu.de) (Ping timeout:
204 seconds)
L1445[22:55:42]
⇨ Joins: Keridos
(~Keridos@2a00:5ba0:8000:64:2e0:4cff:fe23:44af)
L1446[22:55:52]
⇦ Quits: Gaz (~Gaz492@wolf.gaz492.uk) (Ping timeout: 383
seconds)
L1447[22:56:10]
⇦ Quits: afdw (~afdw@80.80.194.25) (Ping timeout: 204
seconds)
L1448[22:56:31]
⇨ Joins: afdw (~afdw@80.80.194.25)
L1449[22:57:19]
⇨ Joins: Gaz (~Gaz492@wolf.gaz492.uk)
L1450[22:59:03]
⇦ Quits: Upthorn
(~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net) (Ping
timeout: 186 seconds)
L1451[23:02:15]
⇦ Quits: Lathanael|Away
(~Lathanael@p54961E96.dip0.t-ipconnect.de) (Ping timeout: 186
seconds)
L1452[23:04:47]
⇨ Joins: Doty1154
(~Doty1154@2601:648:8000:134f:dc27:41c8:9b43:38b4)
L1453[23:08:25]
⇨ Joins: Lathanael|Away
(~Lathanael@p54961637.dip0.t-ipconnect.de)
L1454[23:10:04]
⇨ Joins: npe|office
(~NPExcepti@bps-gw.hrz.tu-chemnitz.de)
L1455[23:15:48]
⇨ Joins: Abastro (~Abastro@143.248.189.97)
L1456[23:21:51]
⇦ Quits: Waterpicker
(~Waterpick@2602:306:35ba:ca40:5d44:e251:3936:edf8) (Ping timeout:
201 seconds)
L1457[23:25:55]
⇦ Quits: McJty (~jorrit@94-224-152-129.access.telenet.be)
(Quit: Leaving)
L1458[23:29:41]
⇦ Quits: sinkillerj
(~sinkiller@nc-67-232-10-214.dhcp.embarqhsd.net) (Remote host
closed the connection)
L1459[23:31:06]
⇦ Quits: Abastro (~Abastro@143.248.189.97) (Read error:
Connection reset by peer)
L1460[23:34:02]
⇨ Joins: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net)
L1461[23:38:16]
⇨ Joins: TomyLobo
(~TomyLobo@ip5b420a6f.dynamic.kabel-deutschland.de)
L1462[23:39:46]
⇨ Joins: Abastro (~Abastro@143.248.189.97)
L1463[23:40:00]
⇨ Joins: Waterpicker
(~Waterpick@2602:306:35ba:ca40:cca7:f306:f63f:756a)
L1464[23:47:28]
⇦ Quits: PitchBright
(~PitchBrig@cpe00fc8d8a3ce3-cm00fc8d8a3ce0.cpe.net.cable.rogers.com)
(Quit: brb)
L1465[23:50:22]
⇨ Joins: PitchBright
(~PitchBrig@CPE00fc8d8a3ce3-CM00fc8d8a3ce0.cpe.net.cable.rogers.com)
L1466[23:54:31]
⇨ Joins: abab9579 (~Abastro@143.248.189.97)
L1467[23:54:33]
⇦ Quits: Abastro (~Abastro@143.248.189.97) (Read error:
Connection reset by peer)
L1468[23:55:56]
⇨ Joins: Abastro (~Abastro@110.70.52.83)