<<Prev
Next>>
Scroll to Bottom
Stuff goes here
L1[00:24:39] ⇨
Joins: Ipsis
(Ipsis!~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L2[00:31:44] ⇨
Joins: Unh0ly_Tigg
(Unh0ly_Tigg!~Unh0ly_Ti@c-24-21-196-226.hsd1.or.comcast.net)
L3[00:48:29] ⇦
Quits: Brokkoli (Brokkoli!~Brokkoli@p2e5b1e0e.dip0.t-ipconnect.de)
(Read error: -0x7880: SSL - The peer notified us that the
connection is going to be closed)
L4[01:02:33] ⇨
Joins: Galaxtone
(Galaxtone!~IceChat9@cable-54-120.sssnet.com)
L5[01:07:06] ⇦
Quits: c233 (c233!~c233@164.40.197.152) (Read error: Connection
reset by peer)
L6[01:07:35] ⇨
Joins: c233 (c233!~c233@164.40.197.152)
L7[01:15:39] ⇦
Quits: nallar
(nallar!~nallar@cpc134854-cani4-2-0-cust141.know.cable.virginm.net)
(Ping timeout: 207 seconds)
L8[01:27:26] ⇨
Joins: ben_mkiv
(ben_mkiv!~ben_mkiv@p4FED560A.dip0.t-ipconnect.de)
L9[01:42:41] ⇦
Quits: Doty1154
(Doty1154!~Doty1154@2601:648:8000:134f:2806:83e5:ae7c:142f) (Read
error: Connection reset by peer)
L10[01:54:47] ⇦
Quits: RichardG (RichardG!~richardg8@201.37.246.64) (Ping timeout:
186 seconds)
L11[01:54:57] ⇨
Joins: RichardG (RichardG!~richardg8@201.37.246.64)
L12[01:54:57]
MineBot sets mode: +v on RichardG
L13[02:00:03] <MCPBot_Reborn> [TEST CSV]
Pushing snapshot_20171229 mappings to Forge Maven.
L14[02:00:07] <MCPBot_Reborn> [TEST CSV]
Maven upload successful for mcp_snapshot-20171229-1.12.zip
(mappings = "snapshot_20171229" in build.gradle).
L15[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/
L16[02:01:11] ⇦
Quits: Neal (Neal!~Neal@47.146.41.184) (Ping timeout: 200
seconds)
L17[02:33:30] <SparkVGX> heya, whats the
forge gradle channel?
L18[02:38:50] <Ordinastie>
#ForgeGradle
L19[02:39:28] <SparkVGX> oops lol,
excellent thank you
L20[02:51:31] ⇨
Joins: auenf (auenf!~David@120.154.64.171)
L21[02:54:05] ⇦
Quits: McJty
(McJty!~jorrit@ptr-9197ufqkddqqq88rsr5.18120a2.ip6.access.telenet.be)
(Quit: Leaving)
L22[03:18:31] <ghz|out> [09:33] (SparkVGX):
heya, whats the forge gradle channel?
L23[03:18:51] <SparkVGX> ?
L24[03:18:52] <ghz|out> reminded me of some
movie my sister used to watch all the time, where the kids ask
"what's the number for 9-1-1?"
L25[03:18:59] <SparkVGX> :P
L26[03:19:32] *
billy calls 4-1-1 to get the number to 9-1-1
L27[03:20:37] <SparkVGX> i tried /join
forgegradle before i asked, but its case sensitive and i didn't
realise xD
L28[03:21:06] <Ordinastie> I hate that,
watching a show, thinkin I recognize a voice, but can't find info
anywhere about it :/
L29[03:21:58] <Ordinastie> (Space Suit IA
voice in Dr Who S10E05)
L31[03:31:09] <Ordinastie> yes
L32[03:31:34] <ghz|out> Space Corpse
(uncredited)
L33[03:31:34] <ghz|out> Mickey Lewis Mickey
Lewis ...
L34[03:31:46] <ghz|out> Clem So ...
L35[03:31:46] <ghz|out> The White Haired
Corpse (uncredited)
L36[03:31:54] <Ordinastie> I've checked
already
L37[03:32:39] <Ordinastie> don't even
really care about the name, I just need to know where I heard her
before
L38[03:32:52] <Ordinastie> or whow I'm
confusing her with
L39[03:49:19] <ghz|out> GAH
L40[03:49:30] <ghz|out> why's
tortoisegitmerge so horribly slow >_<
L41[03:50:24] <ghz|out> apparently someone
says disabling the ribbon UI fixes the problem ¬¬
L42[03:52:26] <ghz|out> yup WAY faster
without ribbon
L43[03:52:33] <ghz|out> which is
annoying...
L44[04:04:31] <ghz|out> !gm
Slot.onSlotChange
L45[04:10:03] <SparkVGX> disabling the
ribbon actually improved the speed? How much of their cpu allowance
was being taken by that lol
L46[04:11:29] <ghz|out> well
L47[04:11:34] <ghz|out> apparently it's an
issue with the image scaling
L48[04:11:51] <ghz|out> which happens due
to the ribbon being hidpi-aware
L49[04:12:05] <ghz|out> why that is so
slow, no idea
L50[04:12:24] <ghz|out> but it adds some 5
seconds to the startup time of the merge app
L51[04:12:47] <ghz|out> for something that
used to be near-instant before the latest windows 10 big
update
L52[05:10:32] ⇦
Quits: MCDis (MCDis!~MCDis@2607:5300:100:200::3fc) ()
L53[05:10:49] ⇨
Joins: MCDis (MCDis!~MCDis@tterrag.com)
L54[05:13:14] ⇦
Quits: alekso56
(alekso56!~cax@2001:464b:c21a:0:745d:45ff:fe3b:a098) (Ping timeout:
383 seconds)
L55[05:21:27] ⇦
Quits: Arcanitor (Arcanitor!~DaMachina@40.112.138.169) (Ping
timeout: 383 seconds)
L56[05:32:41] ⇨
Joins: Raycoms
(Raycoms!~Raycoms@2804:14d:baa0:9612:211:f974:13b9:be92)
L57[05:34:10] ⇨
Joins: DaMachinator
(DaMachinator!~DaMachina@40.112.138.169)
L58[05:34:28] ⇦
Quits: MCDis (MCDis!~MCDis@tterrag.com) ()
L59[05:34:49] ⇨
Joins: MCDis (MCDis!~MCDis@tterrag.com)
L60[05:36:15] ⇦
Quits: MCDis (MCDis!~MCDis@tterrag.com) (Client Quit)
L61[05:36:31] ⇨
Joins: MCDis (MCDis!~MCDis@tterrag.com)
L62[06:18:45] <Raycoms> Hi everyone, I just
noticed that blockStates don't work very well in lists with
contains
L63[06:18:57] <Raycoms> what is the second
best option, blockState.getBlock().getRegistryName ?
L64[06:19:50] ⇨
Joins: Cast0077
(Cast0077!~Cast0077@24-151-30-78.dhcp.nwtn.ct.charter.com)
L65[06:20:05] <ghz|out> what is the purpose
of it?
L66[06:20:47] <Raycoms> I want to store all
ores I extracted from the oredict in a static list so my miner can
check if its a ore and doesn't have to calc the whole oredict
again
L67[06:20:56] <Raycoms> I do this calc on
each restart, since people might add a new mod
L68[06:21:18] <Raycoms> But, atm a player
reported 100k ores in his list, since the blockStates did not
respond to the contains
L69[06:27:21] ⇨
Joins: Hunterz (Hunterz!~hunterz@62.182.234.189)
L70[06:29:25] ***
PaleOff is now known as PaleoCrafter
L71[06:40:52] <ghz|out> Raycoms: what ...
just how many oredict entries are there...
L72[06:41:01] <ghz|out> oredict should be
fast
L73[06:41:15] <ghz|out> wait
L74[06:41:18] <ghz|out>
blockstates...
L75[06:41:38] <ghz|out> are you taking the
blocks from the oredict, then computing a list of their
blockstates?
L76[06:41:44] <Raycoms> Yes
L77[06:42:00] <ghz|out> why not just
use.... the blocks
L78[06:44:52] <Raycoms> Because someone
told me not to...
L79[06:45:00] <ghz|out> I mean
L80[06:45:10] <ghz|out> instead of taking
the entire list of blockstates and putting it into a list
L81[06:45:15] <ghz|out> which is a horrible
idea
L82[06:45:37] <ghz|out> you should be
storing the most generic thing possible
L83[06:45:47] ⇨
Joins: Nedelosk
(Nedelosk!~Nedelosk@ip-37-201-253-118.hsi13.unitymediagroup.de)
L84[06:46:02] <ghz|out> so, in 99% of the
cases
L85[06:46:08] <ghz|out> a block of ores
will always be ores
L86[06:46:25] <ghz|out> if a mod is mixing
ore and non-ore into the same block, only differentiated by
blockstate, that's kindof silly
L87[06:46:33] <ghz|out> and you should slap
the modder that did that
L88[06:47:09] <ghz|out> (specially with
1.13 incoming, which goes the complete opposite way)
L89[06:48:06] <ghz|out> but even then, I
believe this is the kind of thing that deserves having something in
the config, to specify some conditions, per block
L90[06:49:31] <ghz|out> like, if the config
is json, you could have something like: "oreConditions":
{ "weirdmod:blockname" :
[{"property1":"value1","property2":"value2",...}
{second alternative}, {third alternative}, ...]
L91[06:49:48] <ghz|out> then in the code
check only those properties that are explicitly required to
distinguish an ore from a non-ore
L92[06:51:12] <ghz|out> then you would just
go by the Block instance
L93[06:51:21] <ghz|out> map<Block,
Predicate>
L94[06:51:54] <ghz|out> where the Predicate
would be some object containing the info from the config, which
would return "true" if no config is provided, meaning it
defaults to "any variant is an ore"
L95[06:52:21] <ghz|out> and you could even
have this config include known mods
L96[06:52:30] <ghz|out> and only load the
entries from the config that exist in the loaded modpack
L97[06:58:46] ⇦
Quits: ben_mkiv (ben_mkiv!~ben_mkiv@p4FED560A.dip0.t-ipconnect.de)
(Ping timeout: 186 seconds)
L98[06:59:49] ⇦
Quits: SparkVGX (SparkVGX!~SparkVGX@121.99.164.93) (Read error:
Connection reset by peer)
L99[07:01:29] ⇨
Joins: ssblur
(ssblur!~Thunderbi@cpe-65-184-138-23.ec.res.rr.com)
L100[07:08:36] <Raycoms> Ahh thanks, yeah
will definitely go back to blocks
L101[07:25:41]
⇨ Joins: alekso56
(alekso56!~cax@ti0107a400-1663.bb.online.no)
L102[07:27:35] ⇦
Quits: Cast0077
(Cast0077!~Cast0077@24-151-30-78.dhcp.nwtn.ct.charter.com) (Ping
timeout: 186 seconds)
L103[07:49:15]
⇨ Joins: ben_mkiv
(ben_mkiv!~ben_mkiv@p4FED560A.dip0.t-ipconnect.de)
L104[07:54:38]
⇨ Joins: MonkeyTyrant
(MonkeyTyrant!~MonkeyTyr@142.163.129.161)
L105[07:57:18] ⇦
Quits: MonkeyTyrant (MonkeyTyrant!~MonkeyTyr@142.163.129.161)
(Client Quit)
L106[07:59:21] ⇦
Quits: Raycoms
(Raycoms!~Raycoms@2804:14d:baa0:9612:211:f974:13b9:be92) (Remote
host closed the connection)
L107[08:15:12]
⇨ Joins: MonkeyTyrant
(MonkeyTyrant!~MonkeyTyr@142.163.129.161)
L108[08:15:24] ⇦
Quits: MonkeyTyrant (MonkeyTyrant!~MonkeyTyr@142.163.129.161)
(Client Quit)
L109[08:34:14] ⇦
Quits: Dark (Dark!~MrDark@2607:fcc8:d48b:eb00:44dc:8d25:260b:c2fd)
(Ping timeout: 186 seconds)
L110[08:37:45] <ghz|out> lol at @Nonnull
being an actual github username
L112[08:38:20] <Lord_Ralex> null is
too
L113[08:50:37] ⇦
Quits: ssblur (ssblur!~Thunderbi@cpe-65-184-138-23.ec.res.rr.com)
(Quit: ssblur)
L114[09:01:28] <TechnicianLP> i think
those guys have notifications disabled by now ...
L115[09:32:20]
⇨ Joins: Raycoms
(Raycoms!~Raycoms@2804:14d:baa0:9612:211:f974:13b9:be92)
L116[09:33:17] ⇦
Quits: Keridos
(Keridos!~Keridos@static.56.72.76.144.clients.your-server.de)
(Quit: ZNC - http://znc.in)
L117[09:33:40]
⇨ Joins: Keridos
(Keridos!~Keridos@static.56.72.76.144.clients.your-server.de)
L118[09:35:40]
⇨ Joins: quadraxis
(quadraxis!~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L119[09:47:28]
⇨ Joins: immibis
(immibis!~chatzilla@122-60-111-246.jetstream.xtra.co.nz)
L120[09:58:27] <ben_mkiv> is there a way
to access the materiallib of a wavefront object model within
ModelLoaderRegistry?
L121[10:00:47] <ben_mkiv> or is the whole
registry just to create IModels?
L122[10:02:40] <ben_mkiv> same question
about the object groups
L123[10:11:53] ⇦
Quits: mallrat208 (mallrat208!~mallrat20@107.145.144.41) (Ping
timeout: 194 seconds)
L124[10:32:33] <TechnicianLP> you should
not need to do that - the whole point of it that once you ask the
MLR for an IModel you dont have to care about which model it is
(and it could technically no longer be a obj-model due to
resourcepacks)
L125[10:33:26] <TechnicianLP> if you need
to change materials you can specify which one to use before backing
it
L126[10:35:41]
⇨ Joins: h404bi (h404bi!~h404bi@119.129.112.62)
L127[10:36:13] <ben_mkiv> its about
entities
L128[10:36:16] <ben_mkiv> and
animation
L129[11:10:48] <ghz|out> ben_mkiv: no you
can't access the details, just specify data through the customdata,
or in the IModelState during baking
L130[11:11:49] <ben_mkiv> thanks
L131[11:11:58] <ben_mkiv> guess ill just
use the objloader then
L132[11:12:13] <PaleoCrafter> uhm... what
is it exactly that you need?
L133[11:12:14] <ben_mkiv> as it looks like
to support reading the groups
L134[11:12:28] <PaleoCrafter> you can
modify which groups to display through the IModelState
L135[11:12:32] <ben_mkiv> i want to apply
different rotations to some groups
L136[11:12:40] <ben_mkiv> also their
rotation?
L137[11:12:46] <PaleoCrafter> I think so,
yes
L138[11:12:54] <PaleoCrafter> let me find
my code
L139[11:12:58] <ben_mkiv> ok, i'll look
into IModelState first
L140[11:13:10] <PaleoCrafter> it's a
little weird
L141[11:13:20] <ben_mkiv> the whole
minecraft codebase is
L142[11:13:20] <ben_mkiv> xD
L143[11:13:47] <PaleoCrafter> but if
you're in an entity anyways, why not just bake with the required
groups enabled separately and then normally rotate that?
L144[11:13:51] <ben_mkiv> well IModelState
is just an interface with one function
L145[11:14:06] <PaleoCrafter> if you
define the rotation with the state, you'd constantly have to
rebake
L146[11:14:13] <PaleoCrafter> that
function is used weirdly, though :P
L147[11:14:22] <ben_mkiv> well the
question is how would i access lower left arm for example
L148[11:14:57] <ben_mkiv> when i just
cache all modelparts with the forge objloader and use custom
rendercode i can allign them as i want to
L149[11:15:05] <ghz|out> ben_mkiv: if you
want to animate, you should be using b3d animations, not obj
parts
L150[11:15:16] <ghz|out> the obj loader is
NOT designed for this
L151[11:15:16] <ben_mkiv> whats their
advantage?
L152[11:15:24] <ghz|out> b3d can CONTAIN
ANIMATIONS
L153[11:15:24] <ben_mkiv> do they have
poses?
L154[11:15:28] <ghz|out> yes
L155[11:15:35] <ghz|out> well
L156[11:15:45] <ghz|out> I don't know what
"poses" means in this context
L157[11:15:57] <ben_mkiv> actually im
using custom posecode with easing for smooth stuff
L158[11:16:09] <ben_mkiv> but all parts
are seperate obj model files, which is annoying to update
L159[11:16:19] <PaleoCrafter> B3D does
have skeletal animations
L160[11:16:36] <ghz|out> the idea with b3d
is that you rig and animate in blender
L161[11:16:36] <PaleoCrafter> which Forge
supports pretty much completely, afaik
L162[11:16:44] <ghz|out> and use the b3d
exporter to save the model WITH the animations
L163[11:16:54] <ghz|out> and then you
declare an animation state machine
L164[11:17:07] <ghz|out> and provide the
animation system with a place to hold the animation state
L165[11:17:14] <ben_mkiv> well if this
works as you say it would save me tons of work i guess
L166[11:17:24] <ghz|out> I can't tell you
the exact steps and code to use
L167[11:17:29] <ghz|out> because I have
never managed it myself
L168[11:17:32] <ben_mkiv> know any mod
that uses it?
L169[11:18:00] <ghz|out> nope, I have no
idea if anyone has managed to make it work :P
L170[11:18:05] <ghz|out> I *think*
so
L171[11:18:06] <ben_mkiv> xD
L172[11:18:08] <ghz|out> but I don't know
anything by name
L173[11:18:17] <ghz|out> forge has some
example/test files for it
L174[11:18:17] <ben_mkiv> yea, but i like
the idea of custom pose code more
L175[11:18:26] <ben_mkiv> allows me some
tweaks like fuzzyness
L176[11:18:47] <ghz|out> uhm I don't know
that it allows THAT kind of customization
L177[11:19:12] <ghz|out> the animation
sequences would be embedded into the b3d file and played as they
were designed in the modelling program
L178[11:19:33] <ben_mkiv> which ends up as
static animation xD
L179[11:19:58] <ben_mkiv> nah i want my
sneak code for example call strechtleg(left, -1)
L180[11:20:23] <ben_mkiv> and it'll rotate
the parts with some fuzz but still fit the -1F distance
L181[11:20:36] <illy|Laptop> I forgot
about the animation state machine... is there any documentation on
that thing...
L182[11:20:41] <PaleoCrafter> lel
L183[11:20:47] <ghz|out> illy|Laptop: the
example code in the repository.
L184[11:20:50] <PaleoCrafter>
"documentation" is a word utterly foreign to fry :P
L185[11:20:55] <ghz|out> I have never seen
anyone document it
L186[11:21:01] <ghz|out> and fry's stance
was "just read the code"
L187[11:21:11] <illy|Laptop>
>.>
L188[11:21:16] <PaleoCrafter> there's a
grammar for ASMs, but that's about it
L189[11:21:33] <ben_mkiv> and for what it
looks like, as its for a entity with custom render code... is it
really wrong to just use the OBJLoader and bypass
modelregistry?
L190[11:21:53] <PaleoCrafter> yes.
L191[11:21:54] <PaleoCrafter> :P
L192[11:22:00] <ghz|out> vanilla embeds
the models in java code
L193[11:22:06] <ghz|out> anything is
better than that :P
L194[11:22:20] <ben_mkiv> just wondering
if i miss some important thing
L195[11:22:23] <illy|Laptop> sadly that
was reminds me of the olden days where men were men and didnt have
a mod loader... *sudders*
L196[11:22:24] <ben_mkiv> before starting
to code xD
L197[11:22:41]
⇨ Joins: Hgrebnednav
(Hgrebnednav!~Hgrebnedn@d8d872a6e.access.telenet.be)
L198[11:22:46] <PaleoCrafter> I can't find
my IModelState using code right now, I might've never even
committed it xD
L199[11:22:59] <ben_mkiv> but telling me
to use it
L200[11:23:04] <ben_mkiv> :P
L201[11:23:20] <PaleoCrafter> it's the way
you're supposed to do it >.>
L202[11:24:10] <ghz|out> I want to take
this chance to remember my 2013 attempt at modding (mc 1.4.7)
L204[11:24:16] <ghz|out> and my approach
at loading obj models
L205[11:24:16] <ghz|out> :P
L206[11:24:31] <PaleoCrafter> I think you
had to return a present identity transform if you want to *hide* a
part xD
L207[11:25:00] <ben_mkiv> i'll stick to
the OBJLoader :P
L208[11:25:14] <PaleoCrafter> hell
nah
L209[11:25:24] <PaleoCrafter> you're gonna
do this properly
L210[11:25:29] <ben_mkiv> lol
L211[11:25:32] <ghz|out> XD
L212[11:26:04] <PaleoCrafter> right, a
present Optional for some weird ass reason will *hide* the
part
L213[11:26:14] <PaleoCrafter> 'cause why
not
L214[11:26:30] ⇦
Quits: quadraxis
(quadraxis!~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
(Ping timeout: 186 seconds)
L215[11:26:58] <ben_mkiv> the thing is...
i need to see it work in action
L216[11:27:52] <ben_mkiv> to me it looks
like making changes to the IModel needs rebaking it
L217[11:28:18] ⇦
Quits: MikrySoft
(MikrySoft!~mikrysoft@89-71-101-248.dynamic.chello.pl) (Ping
timeout: 383 seconds)
L218[11:28:24] <ghz|out> yes
L219[11:28:26] <ghz|out> it does.
L220[11:28:31] <ghz|out> every time you
want to make ANY change
L221[11:28:34] <ghz|out> you need to
re-bake
L222[11:28:38] <ben_mkiv> thats nuts
L223[11:28:42] <PaleoCrafter> that's why I
said bake the parts but manually do the rotation ._.
L224[11:28:46] <ben_mkiv> i can do the
transforms at rendertime
L225[11:28:47] <ghz|out> but that's how
the animation system works
L226[11:28:55] <ben_mkiv> or on cpu and
pass that matrix to opengl
L227[11:28:56] <ghz|out> every frame, it
applies the skeleton in cpu
L228[11:29:05] <PaleoCrafter> eh, not
really, ghz|out
L229[11:29:07] <ghz|out> and sends the
pre-transformed vertices to the rendering code
L230[11:29:52] <ghz|out> everything ends
up going to the tesellator, which just knows quads, so in order to
apply the animation, it has to transform each vertex
beforehand
L231[11:30:24] <ben_mkiv> actually my way
is to store rotation etc on each part/bone
L232[11:30:42] <ben_mkiv> at rendertime it
fetches a matrix4 with all those rotation/translations
applied
L233[11:30:51] <ben_mkiv> and passes that
to opengl, where i just have to render the parrt
L234[11:30:57] <ben_mkiv> -r
L235[11:31:30] <ben_mkiv> but that using
seperate objfiles for each part and using the modelregistry
L236[11:31:48] <PaleoCrafter> take a look
at AnimationModelBase, methinks
L237[11:31:59] <ben_mkiv> is that forge or
vanilla code?
L238[11:32:17] <PaleoCrafter> Forge
L239[11:32:31] <ghz|out> forge -- vanilla
knows nothing about animated models.
L240[11:33:15] <ben_mkiv> its stirked in
IDEA
L241[11:33:22] <ben_mkiv> striked...
deprecated?
L242[11:33:36] <PaleoCrafter> read the
comment above the class, it's just not working entirely correctly
xD
L243[11:33:51] <ben_mkiv> yea, just
noticed the annotation
L244[11:33:55] <ben_mkiv> but look at this
rendercode....
L245[11:34:01] <ben_mkiv> i'm not going to
use that xD
L246[11:34:09] <PaleoCrafter> ... it's for
inspiration
L247[11:34:14] <ghz|out> PaleoCrafter:
you'll notice it bakes each frame :P
L248[11:34:29] <PaleoCrafter> yeah, I
misremembered that xD
L249[11:34:51] <PaleoCrafter> I wonder how
the heck that is performing so well xD
L250[11:34:58] <ben_mkiv> i can tell
you
L251[11:35:01] <ben_mkiv> because no one
uses it
L252[11:35:03] <ben_mkiv> :D
L253[11:35:04] <ghz|out> well, mc models
have few quads
L254[11:35:16] <ghz|out> so re-baking a
few dozen quads per frame isn't that much
L255[11:35:35] <ghz|out> I'm sure you'd
notice it, though, if you tried to use the animation system on a
less sparse block
L256[11:35:38] <PaleoCrafter> ah,
actually, it's not entirely rebaking for TEs
L257[11:35:38] <ghz|out> or entity
L258[11:36:29] <ben_mkiv> actually i've
read that for newer opengl its adviced to use shaders for
transitions/rotations
L259[11:36:31] <PaleoCrafter> and fry
spammed a shitton of his engine thingy in a world without a
considerable impact, that should've taken a toll
L260[11:37:09] <ben_mkiv> so i wonder how
that improves perfomance when using buffered models all the time,
and just doing the transformation on gpu
L261[11:37:29] <ghz|out>
"newer"
L262[11:37:41] <ghz|out> mc uses ancient
opengl
L263[11:37:46] <ghz|out> not just old,
ancient.
L264[11:37:53] <ben_mkiv> yea, but that
made it easy to get into it
L265[11:37:56] <ghz|out> gl3.0 is from
like what... 2005?
L266[11:38:10] <ben_mkiv> well isnt it
gl11 calls most of the time?
L267[11:38:23]
⇨ Joins: mallrat208
(mallrat208!~mallrat20@107.145.144.41)
L268[11:38:24] <ghz|out> Release date:
August 11, 2008
L269[11:38:43] <ghz|out> MOST functions
are in GL11
L270[11:38:48] <ghz|out> but only because
they happen to be in GL11
L271[11:39:01] <ghz|out> mc prefers to use
VBOs these days
L272[11:39:04] <ghz|out> which are opengl
2.0
L273[11:39:16] <ben_mkiv> VBOs depend on
shaders?
L274[11:40:06] <ghz|out> no
L275[11:40:20] <ghz|out> they are just a
more efficient way to store geometry
L276[11:40:32] <ghz|out> since VBOs can be
stored in the gpu, and reused multiple times
L277[11:40:41] <ben_mkiv> oh ok, so they
do transforms on gpu, too
L278[11:41:05] <ghz|out> well the
GlStateManager.translate and such do change the opengl matrix,
which is applied on gpu
L279[11:41:18] <ghz|out> the only thing
that transforms on cpu is the forge model system :P
L280[11:41:28] <ben_mkiv> and my code
actually
L281[11:41:40] <ghz|out> and the main
reason is that when you provide a model for a block or item
L282[11:41:43] <ghz|out> you don't have
access to opengl
L283[11:42:15] <ghz|out> the tesellator
just gathers things into a VBO and sends it to the gpu
L284[11:50:23]
⇨ Joins: Commoble
(Commoble!~Commoble@mnpl-04-3331.dsl.iowatelecom.net)
L285[11:56:07] <Raycoms> I guess rotation
+ 6 states = no way =/
L286[11:56:16] <ghz|out> ?
L287[11:56:29] <ghz|out> if you mean in
metadata, in 1.12 or earlier, nope
L288[11:56:47] <Raycoms> I have a slab
which is supposed to work like a stair (recognize the connecting
blocks and adapt to it) but it can have 4 rotations as well
L289[11:56:48] <ghz|out> you'd have to use
a tileentity, or make it more than one block "id"
L290[11:57:29] <Commoble> wait
L291[11:57:39] <Commoble> Recognizing the
connecting blocks and adapting to them can be done without
metadata
L292[11:57:48] <Commoble> in fact actual
stairs will do that
L293[11:58:11] <ghz|out> eh yes
L294[11:58:14] <ghz|out>
getActualState
L295[11:58:19] <ghz|out> you don't need
the metadata for that
L296[11:58:57] <Raycoms> Hmm, I think
that'll be the only way, I'll still use all 4*6 states right? I'll
just not load it from or to meta
L297[11:59:15] <Commoble> Right, you'd
only use the meta for the rotation
L298[11:59:31] <Raycoms> actually the
rotation also depends on the connecting blocks
L299[11:59:49] <Commoble> If you take the
connecting blocks away, will the rotation change?
L300[11:59:53] <Commoble> er, if you break
them
L301[12:00:06] <Raycoms> possible
L302[12:00:07] <ghz|out> yes you can use
WAY more than 16 states
L303[12:00:11] <ghz|out> just not store
them in metadata :P
L304[12:00:19] <ghz|out> just be
reasonable
L305[12:00:26] <ghz|out> 1 million state
combinations = bad
L306[12:00:37] <ghz|out> all the variants
are computed at load time, metadata or not
L307[12:02:12]
⇨ Joins: moony
(moony!~moony@tx-76-4-59-100.dhcp.embarqhsd.net)
L308[12:02:26] <Commoble> if you're using
one million state combinations you might want to look into a
tileentity instead
L309[12:02:48] <ghz|out> or a redesign of
the mod
L310[12:02:48] <ghz|out> :P
L311[12:03:04] <ghz|out> I started working
on a mod to overhaul the entire concept of "tree" in
minecraft
L312[12:03:08] <ghz|out> a while ago
L313[12:03:17] <ghz|out> and I soon
realized
L314[12:03:36] <Commoble> trees are
vindictive sons of bitches
L315[12:03:38] <ghz|out> a branch block...
with leaves/no leaves... 6 thickness values... 6 rotations...
L316[12:03:45] <ghz|out> that's already
over 200 combinations
L317[12:03:50]
⇨ Joins: McJty
(McJty!~jorrit@ptr-9197ufp7ob5npudm4ha.18120a2.ip6.access.telenet.be)
L318[12:04:11] <ghz|out> but I wanted to
connect with neighbouring branch blocks
L319[12:04:27] <ghz|out> so I had to also
store each neighbour's thickness, not just the blocks' own
L320[12:04:34] <ghz|out> that meant 6
thickness values PER FACE
L321[12:04:46] <ghz|out> 2 * 6 * 6 *
6^6
L322[12:04:48] <ghz|out> !!calc 2 * 6 * 6
* 6^6
L323[12:04:48] <ghz|out> ghz|out:
Result(s): 3359232
L324[12:04:53] <ghz|out> a bit much
:P
L325[12:05:00] <Commoble> oh that's
handy
L326[12:05:30] <ghz|out> yeh that's why I
keep it around :P
L327[12:05:43] <ghz|out> wrote an
expression parser a while ago, and I was thinking "what do I
use it for?"
L328[12:05:55] <ghz|out> decided to
interface it with my mirc client
L329[12:06:50] *
Commoble wonders about the overhead cost of making each tree a
tileentity
L330[12:07:08] <ghz|out> depends if it's
ticking
L331[12:07:12] <ghz|out> I thought of
making them entities
L332[12:07:33] <ghz|out> but those can't
even have a static model :P
L333[12:07:51] <ghz|out> one of the ideas
I had was to make the trees grow
L334[12:07:58] <ghz|out> and have a
"health"
L335[12:08:15] <ghz|out> which on reaching
0, would make the tree turn into X wood + Y sticks + Z leaf
blocks
L336[12:08:26] <ghz|out> depending on how
big it was
L337[12:09:06] <Commoble> "You strike
the tree with your diamond axe! It explodes in a shower of
gore!"
L338[12:11:11] <ghz|out> so yeah
L339[12:11:32] <ghz|out> my second idea,
was to make each branch block explicitly connect to a bigger branch
block
L340[12:11:40] <ghz|out> so that when you
break the bigger branch
L341[12:11:50] <ghz|out> all the smaller
branches facing it, would also pop off
L342[12:11:59] <ghz|out> a bit like the
chorus plant does now
L343[12:12:10] <ghz|out> (but I was
writing that code years before that :P)
L344[12:13:35] <ghz|out> the results
aren't bad
L345[12:13:59] <ghz|out> if sharex will
finish uploading...
L346[12:14:25] <ghz|out> hmm imgur is
dead?
L347[12:14:41] <Commoble> imgur works for
me
L348[12:16:03] ⇦
Quits: Lynndis (Lynndis!~Lynn@c-75-71-231-133.hsd1.co.comcast.net)
(Ping timeout: 207 seconds)
L349[12:16:40] <ghz|out> maybe they
disallow remote uploads now
L350[12:16:45] <ghz|out> sharex isn't
working anymore :P
L351[12:22:57] <IoP> imgur was having
serious problems earlier
L352[12:23:18] <IoP> I had to upload image
with curl because browser was getting 504s
L353[12:24:32] <ghz|out> maybe they are
being DDoS'd
L354[12:28:06] ⇦
Quits: Ordinastie (Ordinastie!~Ordinasti@bronyville.me) (Quit:
-)
L355[12:29:25] <Commoble> I've been using
puush for short-term uploads
L356[12:36:57]
⇨ Joins: parzivail
(parzivail!~parzivail@162-199-87-109.lightspeed.jcvlfl.sbcglobal.net)
L357[12:37:18] <parzivail> are 1.7.10
questions basically taboo at this point?
L358[12:37:38] <PaleoCrafter> they have
been for more than a year, yes :P
L359[12:37:50] <ghz|out> people are less
annoyed by them than they were in 2015 :P
L360[12:38:01] <ghz|out> but also people
have had more time to forget
L361[12:38:42] <ghz|out> the general
stance isthat this channel is for the actively supported
versions
L362[12:39:08] <ghz|out> which at this
point would be 1.12.2, a bit of 1.11.2, and can stretch down to
1.10.2 but just barely
L363[12:39:21] <parzivail> great.
regardless, so I'm trying to get an IMultipartEntity to be
mountable but I can't figure out when they're actually spawned into
the world. if you spawn the parent entity, the children are
_created_ but obviously not spawned in on both sides because you
can mount them only after a world reboot
L364[12:39:31] <ghz|out> so on the upside,
you'll be slapped around for 1.17.10 about as much as for 1.8.9
:P
L365[12:39:57] <ghz|out> eh, no idea about
multipart entities
L366[12:40:03] <Raycoms> is there a way to
generate a blockState?
L367[12:40:05] <ghz|out> so I couldn't
answer even if you asked for 1.12.2 :P
L368[12:40:10] <ghz|out> Raycoms:
"generate"?
L369[12:40:29] <ghz|out>
block.getDefaultState().withProperty(...).withProperty(...)...
L370[12:40:39] <Raycoms> In the
world
L371[12:40:45] <ghz|out> place?
L372[12:40:51] <ghz|out>
world.setBlockState(...)
L373[12:40:52] <Commoble>
setBlockState?
L374[12:40:54] <Raycoms> Yeah, but outside
of the code =P
L375[12:40:59] <Commoble> wut
L376[12:41:04] <ghz|out> chat command,
/setblock ?
L377[12:41:20] <ghz|out> but
L378[12:41:22] <Raycoms> how do I define
the blockState with this? Besides metadata?
L379[12:41:24] <Commoble> what exactly are
you trying to do?
L380[12:41:29] <ghz|out> if you want to
type the list of properties
L381[12:41:33] <ghz|out> that's only on
1.12 or maybe 1.11
L382[12:41:39] <Raycoms> I'm on 1.12
=)
L383[12:41:47] <ghz|out> then check the
official wiki for /setblock
L384[12:43:59] <Raycoms> kk ty
L385[12:44:33] <Commoble> You can only set
the block ID and the metadata; everything else that defines a
block's state comes from neighboring blocks (like the connectivity
of stairs)
L386[12:45:06] <ghz|out> nay you can
/setblock weird stuff
L387[12:45:12] <ghz|out> nah*
L388[12:45:17] <ghz|out> but it won't
"stick"
L389[12:46:30] <parzivail> more abstract
question, then: if you were to create some fashion of a vehicle
with multiple child entities which would be seats that could each
support one player sitting on them, how would you go about
implementing that? my current method is spawn the parent, which
delegates spawning to it's children, from which the children save a
reference to their parent, but it's very flaky
L390[12:47:52] <ghz|out> hmmm the parent
should probably know the children, so that when it moves, it can
immediately update the position of the children
L391[12:50:18] <parzivail> right, i have
an array in the parent which has the children, and it loops over
the children each onUpdate. my sticking point is that, when
EntityDragon does it, it never spawns in the children, they just
kinda exist in a world-detached state where the parent (dragon)
updated them each tick. that wouldn't be optimal i feel for having
a player ride atop them since they're not actually spawned entities
in the
L392[12:50:18] <parzivail> world. not
entirely sure how that works. I am implementing `Entity[]
getParts()` though
L393[12:50:53] <ghz|out> yeah dunno
L394[12:51:07] <parzivail> the mystery
continues
L395[12:52:35] ***
Santa|afk is now known as SatanicSanta
L396[12:52:37]
⇨ Joins: Hgreb
(Hgreb!~Hgrebnedn@d8D872A6E.access.telenet.be)
L397[12:54:57] ⇦
Quits: Hgrebnednav
(Hgrebnednav!~Hgrebnedn@d8d872a6e.access.telenet.be) (Ping timeout:
200 seconds)
L398[12:58:03] <parzivail> are entity IDs
static between world loads?
L399[12:59:31] <parzivail> don't think so.
that may be my problem
L400[13:05:39] <ghz|out> there should be a
persistent ID
L401[13:13:07]
⇨ Joins: KGS
(KGS!~KGS@h-158-174-9-50.NA.cust.bahnhof.se)
L402[13:13:16] <parzivail> yeah, just
found that
L403[13:17:51]
⇨ Joins: MikrySoft
(MikrySoft!~mikrysoft@89-77-131-219.dynamic.chello.pl)
L404[13:18:02]
⇨ Joins: Neal (Neal!~Neal@47.146.41.184)
L405[13:25:01] ⇦
Quits: Nedelosk
(Nedelosk!~Nedelosk@ip-37-201-253-118.hsi13.unitymediagroup.de)
(Read error: Connection reset by peer)
L406[13:26:10]
⇨ Joins: Nedelosk
(Nedelosk!~Nedelosk@ip-37-201-253-118.hsi13.unitymediagroup.de)
L407[13:29:06] ⇦
Quits: MikrySoft
(MikrySoft!~mikrysoft@89-77-131-219.dynamic.chello.pl) (Killed
(NickServ (GHOST command used by MikrySo5)))
L408[13:35:11]
⇨ Joins: quadraxis
(quadraxis!~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L410[13:42:12] <Ivorius> You said it
L411[13:42:21] <Ivorius> I mean, better
than vertices :P
L412[13:42:25] <PaleoCrafter> sure
L413[13:44:15]
⇨ Joins: sww1235
(sww1235!~sww1235@ferrari.cs.colostate.edu)
L414[13:44:51] <PaleoCrafter> I can't
remember, should it ease in when opening the drawer or when closing
it? xD
L415[13:46:02] <ghz|out> I have seen
drawers that do both :P
L416[13:46:08] <PaleoCrafter> heh
L417[13:46:38] <Ivorius> Considering it's
a human motion
L418[13:46:41] <parzivail> i'd say ease
out for opening, ease in for closing
L419[13:46:59] <Ivorius> I'd say ease in
for both
L420[13:47:01] <PaleoCrafter> I feel like
opening it should probably ease out, since you forcefully pull at
it and then get slower to hit the right spot xD
L421[13:48:40] <ghz|out> I think ease-out
on both
L422[13:51:04] <PaleoCrafter> lol
L423[13:51:22] <PaleoCrafter> let's see
how ease out opening and ease in closing looks
L424[13:52:30] <parzivail> because i know
i just push drawers and let them close on their own
L425[13:52:37] <parzivail> they're goin
pretty quick when they finally close
L426[13:58:28] <PaleoCrafter> bah, the
stupid thing about the armatures for Vanilla models is that you
can't pass in 1 to get the final frame of a clip
L427[14:04:49] ⇦
Quits: McJty
(McJty!~jorrit@ptr-9197ufp7ob5npudm4ha.18120a2.ip6.access.telenet.be)
(Quit: Leaving)
L428[14:05:18] <ghz|out> parzivail: they
make drawer guides that brake the drawer, these days
L429[14:05:36] <parzivail> yeah, the fancy
soft-close ones
L430[14:05:45] <PaleoCrafter> none of
those soft close shenanigans for this :P
L431[14:06:09] <parzivail> uNrEaLiStiC
dWaWeR ExPeCtAtIoNs
L432[14:06:16] <parzivail> drawer*
L433[14:06:47] <ghz|out> well
L434[14:06:50] <ghz|out> if you ease-out
on the closing
L435[14:06:55] <ghz|out> it would be
sortof-softclose
L437[14:08:30] <ghz|out> >_<
L438[14:09:05] <PaleoCrafter> I've got no
clue where the hell that stuttering is coming from
L439[14:09:14] <parzivail> Welcome to
Minecraft (TM)
L440[14:09:16] <ghz|out> it's not
stuttering
L441[14:09:33] <ghz|out> either the
animation loops for one frame before resetting to the final
state
L442[14:09:43] <ghz|out> or the animation
ends and resets to the original state, before applying the new
state
L443[14:10:02] <PaleoCrafter> since it's
not always the case, I assume I'm getting some weird double
precision error here
L444[14:10:06] <PaleoCrafter> or rather,
float
L445[14:10:28] <ghz|out> scale the
animation progress by .99 or something :P
L446[14:10:35] <PaleoCrafter> I'm already
doing that :P
L447[14:10:40]
⇨ Joins: Brokkoli
(Brokkoli!~Brokkoli@p2E5B1E0E.dip0.t-ipconnect.de)
L448[14:10:43] <PaleoCrafter> apparently
0.99 is still too close to 1 xD
L449[14:10:51] <ghz|out> unless that's the
cause :P
L450[14:11:00] <PaleoCrafter> hm?
L451[14:11:10] <parzivail> try removing
the scale
L452[14:11:17] <ghz|out> I mean maybe it
takes "too long" or whatever
L453[14:11:19] <parzivail> see if the
scale is the issue itself
L454[14:11:23] <PaleoCrafter> nah, the
clip can't handle 1s
L455[14:11:51] <PaleoCrafter> it does t -
floor(t) to normalize the progress to a 0..1 space
L456[14:12:25] <PaleoCrafter> if I scale
by 0.9, I don't get any flickering
L457[14:12:33]
⇨ Joins: Lynndis
(Lynndis!~Lynn@c-75-71-231-133.hsd1.co.comcast.net)
L458[14:12:53] <parzivail> ah, that's
because 1 - floor(1) is 0, which i assume is the original state of
the animation
L459[14:12:58] <PaleoCrafter> yep
L460[14:13:01] <Commoble> aye
L461[14:13:14] <ghz|out> ewh.
L462[14:13:17] <parzivail> try using
another method to normalize, like dividing t by the length or
soemthing
L463[14:13:19] <parzivail>
something*
L464[14:13:25] <ghz|out> hmmm
L465[14:13:28] <PaleoCrafter> I'm not
controlling the normalization ^^
L466[14:13:36] <PaleoCrafter> but I've
already found a ton to PR for the animation system xD
L467[14:13:37] <parzivail> who is?
L468[14:13:41] <ghz|out> can you set it to
automatically move to a new animation state after it's done with
that one?
L469[14:13:55] <PaleoCrafter> that's what
the animation state machine is doing, yes
L470[14:14:12] <ghz|out> so, can't you
move it to an animation state that has the "1s" frame
repeated forever?
L471[14:14:33] <PaleoCrafter> that's what
I'm doing :P
L472[14:14:41] <PaleoCrafter> the problem
is that the transition animation hits the 1 frame
L473[14:14:48] <ghz|out> hmmm
L474[14:14:55] <ghz|out> then it isn't
working the way I would expect :P
L475[14:15:02] <PaleoCrafter> well, it
sorta kinda is
L476[14:15:06] <parzivail> is this state
machine part of forge?
L477[14:15:09] <PaleoCrafter> yep
L478[14:15:34] <parzivail> gah, this is
why i'm sticking with 1.7.10, it's all DIY
L479[14:15:50] <parzivail> don't have to
wait for fixes for broken systems
L480[14:16:13] <Commoble> er, you can DIY
things in 1.12 too
L481[14:16:15] <ghz|out> in exchange,
every mod ends up slightly broken in a somewhat different way from
the others
L482[14:16:16] <ghz|out> :P
L483[14:16:18] ⇦
Quits: Hunterz (Hunterz!~hunterz@62.182.234.189) (Read error:
Connection reset by peer)
L484[14:16:35] <parzivail> <enter lex
like the koolaid man to kick me for badmouthing his
system>
L485[14:16:43] <ghz|out> and getting them
all to behave correctly at the same time, is something hell would
reject as "too extreme" :P
L486[14:16:55] *
parzivail shrugs
L488[14:17:11] <PaleoCrafter> I guess we
could add a special case for when t == 1.0
L489[14:17:21] <ghz|out> IMO
L490[14:17:39] <ghz|out> the animation
clip should support [0,1] just fine
L491[14:17:52] <ghz|out> ... when not
looping
L492[14:17:53] <parzivail> seems like
[0,1) right now though
L493[14:18:05] <ghz|out> so
"1-floor(1)" should only apply if the clip is set to
loop
L494[14:18:11] <parzivail> with the
t-floor(t) system supporting that
L495[14:18:12] <ghz|out> if not, it should
remain in the last state
L496[14:18:28] <PaleoCrafter> yeah
L497[14:18:37] <ghz|out> do the clips have
a loop mode?
L498[14:18:46] <PaleoCrafter> they do,
yes
L499[14:18:59] <ghz|out> iirc it's common
for model animations to have "none, wrap-around,
ping-pong"
L500[14:19:47] <PaleoCrafter> well, that
ain't the case here :P
L501[14:19:52] <PaleoCrafter> it's none
and wrap-around, pretty much
L502[14:19:58] <PaleoCrafter> see
MBJointClip
L503[14:20:02] <ghz|out> so floor should
only be used in wrap-around mode, and not the others :P
L504[14:20:24] <ghz|out> in the other
modes, clamp(value, 0, 1)
L505[14:21:02] <ghz|out> yeah
L506[14:21:28] <ghz|out> if (loop) time -=
Math.floor(time); else time = MathHelper.clamp(time,0,1)
L507[14:21:29] ⇦
Quits: moony (moony!~moony@tx-76-4-59-100.dhcp.embarqhsd.net) (Ping
timeout: 194 seconds)
L508[14:21:35] <PaleoCrafter> eh...
L509[14:21:52] <ghz|out> I mean that's
what I would do :P
L510[14:21:59] <PaleoCrafter> the passed
in values aren't guaranteed to be out of [0,1] in non-looping
mode
L511[14:22:20] <ghz|out> ??
L512[14:22:34] <PaleoCrafter> like, you
could also pass values from [2,3]
L513[14:22:37] <ghz|out> time seems to be
assumed to be 0..1
L514[14:23:01] <ghz|out> int length = loop
? var.samples.length : (var.samples.length - 1);
L515[14:23:01] <ghz|out> float timeScaled
= time * length;
L516[14:23:18] <PaleoCrafter> well, that's
after the time -= floor(time) line :P
L517[14:23:28] <ghz|out> yes
L518[14:23:33] <ghz|out> so it assumes
that it will always be 0..1
L519[14:23:37] <PaleoCrafter> yeah,
*there*
L520[14:23:38] <ghz|out> if you pass
3.5
L521[14:23:44] <ghz|out> it means 0.5 in
the third loop
L522[14:23:47] <ghz|out> the progress is
still 0.5
L523[14:24:00] <PaleoCrafter> but you can
pass 3.5 without looping
L524[14:24:08] <ghz|out> then it SHOULD
stay in the last frame
L525[14:24:09] <ghz|out> forever
L526[14:24:43] ⇦
Quits: Ipsis (Ipsis!~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
(Ping timeout: 383 seconds)
L527[14:25:04] <ghz|out> note that it
clamps the time right after that
L528[14:25:41] <parzivail> is there a
correct way to store a reference to another entity in NBT? i can
save but not load UUIDs from NBT between worldloads. it's like the
UUIDs aren't persistent?
L529[14:25:52] <ghz|out> and the time
value isn't used anywhere else
L530[14:25:58] <ghz|out> so even if you
just cancel the floor
L531[14:26:02] <ghz|out> it still ends up
clamped
L532[14:26:05] <PaleoCrafter> I'm talking
about the callers, though
L533[14:26:05] <ghz|out> that said
L534[14:26:08] <ghz|out> the clamp is
meaningless
L535[14:26:19] <ghz|out> since there's
already another one there
L536[14:26:25] <ghz|out> so, if (loop)
time -= Math.floor(time);
L537[14:26:33] <ghz|out> without the
"else" part, would do exactly the same as what I
said
L538[14:26:55] <PaleoCrafter> *assuming*
time is in [0,1], yes
L539[14:27:05] <ghz|out> yes, because
that's what makes sense
L540[14:27:52] <ghz|out> wait, something
just clicked
L541[14:28:00] <ghz|out> can a clip with
loop=false
L542[14:28:21] <ghz|out> be used to play
3.5 loops by specifying it has to run for 3.5 times the animation
length?
L543[14:28:35] <ghz|out> because the code
doesn't feel that way
L544[14:28:39] <ghz|out> but people might
abuse it
L545[14:28:44] <PaleoCrafter> you can use
it that way, yes
L546[14:28:54] <ghz|out> this line
L547[14:28:54] <ghz|out> int length = loop
? var.samples.length : (var.samples.length - 1);
L548[14:29:00] <PaleoCrafter> there's
nothing higher up the pipeline that would restrict it
L549[14:29:01] <ghz|out> makes me fairly
certain it's NOT supposed to be used that way
L550[14:29:27] <ghz|out> since the
condition reads in a way that expects non-looping "1.0"
to be the last frame of the animation
L551[14:29:32] <ghz|out> instead of the
first frame of the next loop
L552[14:29:39] <ghz|out> meaning a
non-looping 3.5x clip
L553[14:29:48] <ghz|out> would be
intrinsically different than a looping 3.5x clip
L554[14:30:41] <ghz|out> so I strongly
believe, anyone using values > 1 in a non-looping clip, and
expecting it to wrap around
L555[14:30:47] <ghz|out> is doing it
wrong, and abusing a bug :P
L556[14:31:05] <PaleoCrafter> eh
L557[14:31:21] <Commoble> parzivail: Yes,
check the call hierarchy for Entity.ridingEntity in eclipse, it
should lead you to something
L558[14:31:37] <parzivail> good call,
thanks
L559[14:31:55] <ghz|out> parzivail:
regarding the UUIDs
L560[14:32:00] <ghz|out> the entity may
not have been loaded YET
L561[14:32:22] <ghz|out> each of the
entities should notify eachother
L562[14:32:25] <ghz|out> that they have
been loaded
L563[14:32:39] <ghz|out> so that no matter
the order, they will eventually find everyone else
L564[14:32:45] <parzivail> right
L565[14:33:13] <PaleoCrafter> god, that
code really reads quite awfully:
(int)Math.round(Math.floor(timeScaled)) xD
L566[14:33:28] <parzivail> why round a
floor before inting it?
L567[14:33:34] <parzivail> it's already
floored
L568[14:33:46] <ghz|out> someone had
precision errors
L569[14:33:50] <ghz|out> and wanted really
badly to fix them
L570[14:33:57] <parzivail> good lord
L571[14:34:05] <ghz|out> (I guess)
L572[14:34:08] <PaleoCrafter> lol
L573[14:34:13] <PaleoCrafter> both
rounding and flooring are superfluous, since timeScaled is assumed
to be positive anyways
L574[14:35:27] <ghz|out> and it could just
be a float clamp, with a cast to int afterward...
L575[14:36:36] <parzivail> "assumed
to be positive" yeah but neither floor nor round changes the
sign
L576[14:37:31] <PaleoCrafter> floor always
rounds to the next *smaller* integer, i.e. floor(-0.5) == -1, while
(int) -0.5 == 0
L577[14:37:40] <PaleoCrafter> so flooring
and casting to int behave differently for negatives
L578[14:37:56] <ghz|out> true
L579[14:38:00] <parzivail> good
point
L580[14:38:13] <PaleoCrafter> but like I
said, they're assumed to be positive, anyways
L581[14:38:22] <PaleoCrafter> otherwise
other parts would explode
L582[14:39:26] <PaleoCrafter> anyways, I
mitigated my issue by scaling the progress by 0.9 and adding an
extra sample with the same value as the last one to the
animations
L583[14:40:41] <PaleoCrafter> now I only
need to sync the whole darn thing properly, add a block for the
animation and implement an in-world recipe book >.>
L584[14:40:42] <PaleoCrafter> xD
L585[14:41:20] <parzivail> ghz|out:
ridingEntity is saved to NBT in writeToNBT(NBTTagCompound) but is
not read from NBT in readFromNBT(NBTTagCompound)?
L586[14:41:24] <PaleoCrafter> oh, right,
and investigate why the hell the animated part isn't properly
rotated after a reload ._.
L587[14:41:47] <parzivail> rather, should
have tagged Commoble:
L588[14:44:35] <Commoble> in 1.12, it's
read in AnvilChunkLoader
L589[14:45:59] <parzivail> ah, i see
L590[14:57:55] <Raycoms> My block edges
are flimmering a bit, like an old pc, what could that be?
L591[14:59:43] <ghz|out> what?
L592[15:00:23] <Raycoms> flickering
L593[15:00:23] <Raycoms> sorry
L594[15:00:58] <immibis> Raycoms:
z-fighting?
L595[15:01:08] <Raycoms> z-fighting?
L596[15:01:33] ⇦
Quits: h404bi (h404bi!~h404bi@119.129.112.62) (Read error:
Connection reset by peer)
L597[15:01:52] <Commoble> z-fighting is
when you have two planes occupying exactly the same space, and you
see flickering between their two textures
L598[15:01:52] <immibis> it's when you
have two polygons (quads/tris) drawn in exactly the same
place
L599[15:02:21] <immibis> so small rounding
errors basically cause randomness in which one gets considered in
front. you usually see weird patterns of one then the other that
flicker if you move the camera
L600[15:03:28] <Raycoms> Ah, probably it,
is there a way to fix that in the code?
L601[15:03:40] <Commoble> don't generate
two planes in the same place
L602[15:04:10] <Commoble> or if you have
to, then don't draw a texture on one of them
L603[15:05:13] <Raycoms> I didn't create
neither the model nor the texture
L604[15:05:48] <Raycoms> Our item and
block modeler did that
L605[15:05:48] <immibis> then it's the
fault of whoever did, presumably
L606[15:05:59] <immibis> tell them not to
put overlapping things
L607[15:06:09] <Commoble> slap them and
tell them to fix it, then
L608[15:06:11] <immibis> there's no good
reason to do it anyway
L609[15:06:15] <immibis> so they
shouldn't
L610[15:06:23] <Raycoms> Not sure if it is
that, because it happens with all 6 models
L611[15:07:18] <immibis> do you have a
screenshot?
L612[15:07:25] <Commoble> or a gif or a
video
L613[15:08:05] <Raycoms> the screenshot
doesn't show the flickering, and the video, damnit, would a jar
work? =P
L614[15:09:10] <immibis> does it look like
there's two different textures mangled together, or flickering
between each other? if not then it probably isn't z-fighting
L615[15:09:51] <parzivail> if neither a
video nor a screenshot shows the flickering (since both record
exactly what's onscreen) are you sure it's not your monitor?
L616[15:10:51] <Raycoms> No, video would
show it, but would need a lot of time to make and upload etc
L617[15:11:21] <Commoble> If you already
have the recorder and editor handy and a place to upload it it'd
take less than five minutes
L618[15:11:55] <parzivail> do you have
Gyazo?
L619[15:12:01] <parzivail> it does
gifs
L620[15:12:09] <Raycoms> No, I
unfortunately don't
L621[15:12:42] <parzivail> it's free
L622[15:12:51] <Raycoms> for linux?
L623[15:14:27] <Raycoms> okay, I just
noticed, it's z-fighting probably
L625[15:15:12] <parzivail> ; sudo apt-get
install gyazo
L627[15:16:17] <Raycoms> the two pixels on
the left and right side of the top model thingy
L628[15:17:41] ⇦
Quits: Hanii
(Hanii!~textual@2a00:23c4:484:d100:c844:c45e:3ac7:d17a) (Quit:
Textual IRC Client: www.textualapp.com)
L631[15:24:43] <ghz|out> isnt' that
like... "how to get hacked" material
L632[15:24:44] <ghz|out> :P
L633[15:24:52] <Galaxtone> Does anyone
know a download link to miner's basic that actually works?
L634[15:25:13] <PaleoCrafter> hm... is
there a method that's called when a TE is "ready"
nowadays?
L635[15:25:26] <PaleoCrafter> like... NBT
is read and world is set
L636[15:25:31] <ghz|out> Galaxtone:
doesn't seem like ith as been updated since 1.8
L638[15:25:40] <parzivail> ghz|out:
*shrug* that was from the install page for that guy's port
L639[15:25:41] <Galaxtone> yah that's
fine.
L640[15:26:18] <Galaxtone> but I checked
and the adf.ly links lead to copy.com which has been removed as of
jan 1, 2016
L641[15:26:30] <ghz|out> ah
L642[15:26:45] <ghz|out> this is probably
the wrong place to ask, then
L643[15:26:57] <ghz|out> we tend to
discourage people from following those tutorials
L644[15:27:12] <Galaxtone> well do you
know anything like it?
L645[15:27:13] <ghz|out> since they have
been shown to teach outdated, or even outright wrong things
L646[15:27:52] <ghz|out> not really, I
haven't used many tutorials for modding
L647[15:27:52] <parzivail> what's Miner's
Basic?
L648[15:27:57] <ghz|out> apparently a
library
L649[15:28:04] <parzivail> huh
L650[15:28:06] <ghz|out> with helpers to
make the tutorials easier to understand
L651[15:28:12] <Galaxtone> It's a library
mod that adds utilities that help with modding
L652[15:28:39] <Galaxtone> *Insert
strikethrough on the word "library"*
L653[15:28:42] <parzivail> in the long run
it's just better to roll your own libs unless you're doing xmod
compat with stuff like CoFH
L654[15:29:08] <ghz|out> "Miner's
Basic" would be an awesome name for a dialect of the BASIC
programming language
L655[15:29:23] <parzivail> maybe for an
in-mc language
L656[15:29:34] <ghz|out> I was introduced
to programming on an old Amstrad CPC464, using Amstrad BASIC
1.1
L657[15:29:37] <Galaxtone> It sounds like
it adds BASIC into minecraft.
L658[15:29:51] <Galaxtone> that whould be
cool
L659[15:29:57] <ghz|out> 5 REM This is a
program
L660[15:30:09] <Commoble> the old redpower
mod added FORTRAN into minecraft
L661[15:30:19] <ghz|out> 10 TAKE item,
UP
L662[15:30:22] <Commoble> good times
L663[15:30:28] <ghz|out> 20 PLACE item,
NORTH
L664[15:30:38] <ghz|out> 30 goto 10
L665[15:30:45] <ghz|out> ^ block placer
implementation
L666[15:31:01] <parzivail> did you know
that REM-style comments actually made programs slower? at runtime
the interpreter still had to traverse that line, tokenize it, and
move on to the next line
L667[15:31:03] <Galaxtone> I wonder if
anyone's tried to make a redpower mod for newer versions of
minecraft that has EXACTLY the same everything.
L668[15:31:17] <parzivail> it literally
discouraged comments
L669[15:31:22] <ghz|out> heh
L670[15:31:23] <Commoble> project red is
similar
L671[15:31:26] <ghz|out> Galaxtone:
yes
L672[15:31:29] <ghz|out> dunno the
progress
L673[15:31:38] <ghz|out> but there's at
least 1 "active" project doin exactly that
L674[15:31:41] <parzivail> is redpower
dead?
L675[15:31:47] <ghz|out>
"yes"
L676[15:31:54] <parzivail> wasn't that
team CoFH?
L677[15:31:58] <ghz|out> the author
ragequit minecraft
L678[15:32:00] <Galaxtone> yah but it
doesnt have "everything" and doesnt even have
compatibility with supported mods after 1.7.10
L679[15:32:06] <ghz|out> and decided to
build a whole game around the redpower mechanics
L680[15:32:06] <Commoble> Eloraam got a
job and a wife and a baby and left modding a long time ago
L681[15:32:36] <ghz|out> then we got
Project Red, which was inspired on it
L682[15:32:37] <Galaxtone> oh really? ghz,
what's it called?
L683[15:32:50] <ghz|out> and BluePower
that tried to make it more faithful to the original
L684[15:32:56] <ghz|out> Galaxtone: it was
meant to be called "RedPower" iirc :P
L685[15:33:05] <ghz|out> I don't think it
was released
L686[15:33:18] <Galaxtone> but was the
game ever rele- oh, sad. that'd be cool
L688[15:33:43] <ghz|out> yep still the
same 2015 post
L689[15:34:21] <parzivail> ghz|out: see
that gyazo i posted?
L690[15:34:23] <Galaxtone> the same
kinda-hard-to-read font
L691[15:35:05] <ghz|out> parzivail: sorry
no idea how riding works
L692[15:35:14] <parzivail> ah, shame
L693[15:36:06] <Galaxtone> I wonder if
anyone's trying to remake that standalone game
L695[15:38:02] <Galaxtone> It's this
month.
L696[15:38:14] <ghz|out> oh nice
L697[15:38:18] <ghz|out> so it's still in
progress
L698[15:39:08] <Galaxtone> well it looked
kinda-blocky in all the recent tweets with a snapshot of
"progress"
L699[15:39:21] <Galaxtone> is that just
the way his standalone game looks or is that minecraft?
L700[15:39:28] <Commoble> her
L701[15:39:38] <Galaxtone> ah right sorry
it's been a long time
L702[15:39:57] <Commoble> and that's her
game
L703[15:40:06] <Galaxtone> nice.
L704[16:00:46]
⇨ Joins: h404bi (h404bi!~h404bi@119.129.118.20)
L705[16:09:51] ⇦
Quits: Kuraron
(Kuraron!~DUX@HSI-KBW-46-223-0-70.hsi.kabel-badenwuerttemberg.de)
(Remote host closed the connection)
L706[16:10:09]
⇨ Joins: Kuraron
(Kuraron!~DUX@HSI-KBW-46-223-0-70.hsi.kabel-badenwuerttemberg.de)
L707[16:38:37] ⇦
Quits: armed_troop
(armed_troop!~armedtroo@pool-108-2-113-105.phlapa.fios.verizon.net)
(Ping timeout: 200 seconds)
L708[16:44:52] <Raycoms> Strange
L711[16:52:20] <Raycoms> Yeah turning off
smooth lightning messes my block up
L712[16:52:24] <Raycoms> is there a way to
fix that?
L713[16:53:12] <PaleoCrafter> jebus,
that's a fancy block :P
L714[16:53:28] <PaleoCrafter> but I
couldn't tell you off the top of my head what would cause
that
L715[16:56:15] <Raycoms> the block mainly
behaves like an half slab
L716[17:00:30] <quadraxis> did you set
useNeighborBrightness ?
L717[17:01:26] <Raycoms> no
L718[17:05:17] <quadraxis> well, that's
something to start with
L719[17:05:53] <quadraxis> vanilla sets it
for it's own blocks by looping through the initial block registry,
it's weird
L720[17:06:49] <Raycoms> okay, ty, let me
try
L721[17:11:47] ⇦
Quits: ben_mkiv (ben_mkiv!~ben_mkiv@p4FED560A.dip0.t-ipconnect.de)
(Ping timeout: 194 seconds)
L722[17:15:21] <Raycoms> quadraxis worked
perfectly
L723[17:28:58]
⇨ Joins: williewillus
(williewillus!~williewil@cpe-24-28-24-13.austin.res.rr.com)
L724[17:29:02] <williewillus> !dcc
L725[17:35:37] ⇦
Quits: Hgreb (Hgreb!~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping
timeout: 194 seconds)
L726[17:49:28]
⇨ Joins: Hanii
(Hanii!~textual@2a00:23c4:484:d100:69b2:d88d:9997:4df1)
L727[17:57:48] ⇦
Quits: Hanii
(Hanii!~textual@2a00:23c4:484:d100:69b2:d88d:9997:4df1) (Quit:
Textual IRC Client: www.textualapp.com)
L728[18:01:25] ***
SatanicSanta is now known as Santa|afk
L729[18:04:58] ⇦
Quits: Raycoms
(Raycoms!~Raycoms@2804:14d:baa0:9612:211:f974:13b9:be92) (Quit:
Leaving)
L730[18:07:00] ⇦
Quits: williewillus
(williewillus!~williewil@cpe-24-28-24-13.austin.res.rr.com) (Quit:
Leaving)
L731[18:09:55]
⇨ Joins: SparkVGX
(SparkVGX!~SparkVGX@121.99.164.93)
L732[18:34:36]
⇨ Joins: lp (lp!~lp@66.109.211.167)
L733[18:35:55] <lp> is this channel OK for
general discussion of forge and mods or just for support?
L734[18:36:51] <ghz|out> it's recommended
to use the forums, but right now it's quite busy so no one will
mind
L735[18:36:56] <ghz|out> eh
L736[18:36:58] <ghz|out> it's quite
idle**
L737[18:37:47] <ghz|out> also this is for
modding help, not even support :P
L739[18:38:14]
⇨ Joins: moony
(moony!~moony@tx-76-4-59-100.dhcp.embarqhsd.net)
L740[18:52:54]
⇨ Joins: ScottehBoeh
(ScottehBoeh!~ScottehBo@2.29.64.81)
L741[18:53:00] <ScottehBoeh> Hello, happy
holidays
L742[18:53:14] <ScottehBoeh> What would be
the best way of checking if a Player can see a block at a specific
axis
L743[18:53:20] <ghz|out> hello, thanks
:)
L744[18:53:37] <ghz|out> hmm not sure what
you mean by specific axis
L745[18:53:45] <ghz|out> you mean if the
player can see the east face?
L746[18:54:30] <ScottehBoeh> I want to
cancel the rendering of a model at a specific X/Y/Z depending on if
the player can actually see it or not
L747[18:54:49] <ScottehBoeh> Say there's a
brick wall in the way, It wouldn't render the model
L748[18:55:25] <Commoble> Oooh, I remember
doing this for a TESR
L749[18:55:36] <Commoble> can't remember
offhand how
L750[18:55:41] <ScottehBoeh> Oh please do
remember :(
L751[18:56:07] <quadraxis> have you
thought about third-person camera views here?
L752[18:56:17] <ScottehBoeh> If third
person I'll just cancel the check
L753[18:56:19] <ScottehBoeh> and have it
render properly
L754[18:56:26] <Commoble> oh, might not
even have been a TESR
L755[18:57:29] <ScottehBoeh> I remember
canEntityBeSeen from wayyyy back
L756[18:57:38] <Commoble> try
block.shouldSideBeRendered, it's a client-side function
L757[18:57:53] <Commoble> check
BlockPortal for an example
L758[18:58:02] <ghz|out> that won't update
dynamically, though
L759[18:58:11] <ghz|out> onyl when a
neighbouring block is updated
L760[18:58:25] <ghz|out> or someone
requires a "re-meshing" of the chunk
L761[18:58:29] <ghz|out> requests*
L762[18:58:29] <quadraxis> that just
prevents rendering the 'inside' faces of transparent/translucent
blocks
L763[18:58:40] <Commoble> are blocks even
rendered when you're not looking at them
L764[18:58:45] <ghz|out> per-chunk
L765[18:58:52] <ghz|out> or rather
L766[18:58:56] <ghz|out> per
sub-mesh
L767[18:59:07] <quadraxis> 16^3
sections
L768[18:59:08] <ScottehBoeh> I could
create a raytrace
L769[18:59:11] <quadraxis> for block
models
L770[18:59:17] <quadraxis> which are
culled
L771[18:59:19] <ghz|out> there's also the
cave stuff
L772[18:59:47] <ghz|out> where it tries to
skip drawing the inside of a cave if it's not visible from the
current location
L773[19:00:02] <ghz|out> but I don't know
how that works exactly
L774[19:00:06] <ghz|out> either way
L775[19:00:14] <ghz|out> ScottehBoeh: is
your block a TESR, or a static model?
L776[19:00:20] <ScottehBoeh> TESR
L777[19:00:25] <ghz|out> okay then
L778[19:00:28] <ghz|out> since you are in
the client
L779[19:00:40] <ScottehBoeh> Can't I
raytrace from player to the te? If it returns null I cancel
rendering?
L780[19:00:43] <ghz|out> you could in
theory raytrace
L781[19:00:55] <ScottehBoeh> (or return
before rendering I mean)
L782[19:01:00] <ghz|out> if it returns
null, *or another block*
L783[19:01:01] <ghz|out> but
L784[19:01:05] <ghz|out> that might not be
too fast
L785[19:01:12]
⇨ Joins: Doty1154
(Doty1154!~Doty1154@2601:648:8000:134f:1940:fb24:c30f:f3d5)
L786[19:01:13] <ScottehBoeh> I
suppose
L787[19:01:15] <ghz|out> imagine one
raytrace per block
L788[19:01:22] <ghz|out> per frame
L789[19:01:24] <Commoble> and it'd be more
than one raytrace per block too
L790[19:01:28] <ghz|out> for each instance
of your block
L791[19:01:46] <Commoble> because
sometimes one side will be visible and the other won't be and
vice-versa
L792[19:01:46] <ghz|out> a more reasonable
approach would be occlusion queries
L793[19:01:58] <ghz|out> where you ask the
GPU if a certain pixel would be drawn or not
L794[19:02:07] <ghz|out> but those aren't
the fastest thing ever, either
L795[19:02:21] <ghz|out> eh I mean
L796[19:02:32] <ghz|out> where you ask the
gpu HOW MANY pixels would be drawn for a drawing command
L797[19:03:02] <ghz|out>
(zero/any/all)
L799[19:10:17] <ghz|out> ^ opinions
welcome :P
L800[19:21:41] <ScottehBoeh> Eyyy
L801[19:21:52] <ScottehBoeh> I've managed
to optimize players a bit
L803[19:22:05] <ScottehBoeh> I'm going to
see what else I can do
L804[19:33:20] ⇦
Quits: Commoble
(Commoble!~Commoble@mnpl-04-3331.dsl.iowatelecom.net) (Quit:
Leaving)
L805[19:39:06] ⇦
Quits: Unh0ly_Tigg
(Unh0ly_Tigg!~Unh0ly_Ti@c-24-21-196-226.hsd1.or.comcast.net) (Quit:
Leaving)
L806[19:39:52]
⇨ Joins: p455w0rd
(p455w0rd!p455w0rd@c-98-220-249-33.hsd1.in.comcast.net)
L807[19:48:50]
⇨ Joins: sinkillerj
(sinkillerj!~sinkiller@67.238.190.99)
L808[19:53:00] ***
PaleoCrafter is now known as PaleOff
L809[20:15:34]
⇨ Joins: Commoble
(Commoble!~Commoble@mnpl-04-3331.dsl.iowatelecom.net)
L810[20:41:03] <Keridos> where has
projectiles setTHrowableHeading gone?
L811[20:47:09] <quadraxis> ask the
bot
L812[20:47:10] <quadraxis> !mh
setThrowableHeading
L813[20:48:01] <Corosus> i think it got
renamed to the new wonderfull 'shoot' name
L814[20:51:24] <kashike> wheee, that was
fun
L815[20:51:44] <Keridos> yeah seems to be
that
L816[20:51:59] <Keridos> and i get a weird
crash after updating to 2576 forge on my mod
L818[20:52:24] <Keridos> any idea what
that might be caused by?
L819[20:52:52] <quadraxis> something like
this
L821[20:52:54] <Corosus> i recal earlier
today someone said forge became less forgiving about incorrect
models, i dont have specifics on whats wrong with a model to cause
that tho
L822[20:54:30] ⇦
Quits: KGS (KGS!~KGS@h-158-174-9-50.NA.cust.bahnhof.se) (Ping
timeout: 186 seconds)
L823[20:54:43] <Corosus> ah, need to
update to an even newer forge i guess?
L824[20:54:58] <quadraxis> no
L825[20:55:18] <quadraxis> you need to not
return null from IModel.getDefaultState
L826[20:55:24] <Corosus> ahh
L827[20:55:58] <quadraxis> the even newer
forge catches the error and uses the missing model
L828[20:56:07] <quadraxis> rather than a
full crash
L829[20:56:22] <Corosus> ahh
L830[21:02:46]
⇨ Joins: armed_troop
(armed_troop!~armedtroo@pool-108-2-113-105.phlapa.fios.verizon.net)
L831[21:03:39] ⇦
Quits: Nedelosk
(Nedelosk!~Nedelosk@ip-37-201-253-118.hsi13.unitymediagroup.de)
(Read error: Connection reset by peer)
L832[21:07:13] <Keridos> what if my model
does not even use the state
L833[21:07:16] <Keridos> in its bake
function
L834[21:09:17] <Commoble> still needs a
default state, I'd think
L835[21:14:08] <Keridos> thanks was pretty
easy
L836[21:14:13] <Keridos> just deleting the
return null
L837[21:14:18] <Keridos> the interface has
a default method
L838[21:14:48] *
Commoble scratches head
L839[21:28:16] ⇦
Quits: Commoble
(Commoble!~Commoble@mnpl-04-3331.dsl.iowatelecom.net) (Quit:
Leaving)
L840[21:38:28] <Corosus> how does one
build their mod against another mods api and other apis if those
apis and the mods that provide them use different mcp mappings? im
new to this whole 'use peoples api' game
L841[21:40:42] ⇦
Quits: ScottehBoeh (ScottehBoeh!~ScottehBo@2.29.64.81) (Quit:
Leaving)
L842[21:45:56] <parzivail> i believe you
have to use the same mappings for it to work.
L843[21:46:12] <parzivail> that's the way
it went for me using CoFH Core
L844[21:46:17] <Corosus> what if i wanted
to build against 2 apis, and those 2 used 2 different
mappings?
L845[21:46:47] *
parzivail scratches head
L846[21:47:05] <parzivail> i'm... not
sure
L847[21:47:09] <parzivail> never been
there
L848[21:47:43] <Corosus> i guess i could
track down that mcp mapping updater/changer tool and run it on each
source so that they match, and use those modified sources for my
own purposes which should work fine in deobf'd production
L849[21:48:06] <Corosus> not sure how well
the tool works, or what it was called
L850[21:48:12] <parzivail> as long as they
compile down to the same thing it should work fine
L851[21:48:15] <Corosus> ye
L852[21:48:35] <parzivail> or, if the APIs
are open source, you could compile them yourself
L853[21:49:41] <Corosus> heh, i guess i
could ignore the errors, and every time i want to test, do a full
gradle build
L854[21:50:11] <parzivail> As Long as it
Compiles (TM)
L855[21:50:47] <parzivail> that sounds
painfully inconvenient though
L856[21:50:57] <Corosus> for sure
L857[21:51:04] <parzivail> are you
POSITIVE you need both APIs? which are they?
L858[21:51:36] <Corosus> im just
theorizing scenarios, but atm my weather2 mod does use a different
mapping than tough as nails source, so thats a slight
annoyance
L859[21:52:25] <Corosus> my mappings are
pretty old so i might just update my own mappings to its mappings
and be good enough
L860[21:52:38] <parzivail> best i could
figure is to ask the authors for the api src
L861[21:52:46] <Corosus> its open source,
so thats np
L862[21:53:20] <Corosus> though there is
another mod that does seasons i might wanna try and do compat with
so bam, multiple apis
L863[21:53:21] <parzivail> or, (not
speaking for the ethics) decompile the mod and recompile
manually
L864[21:53:23] <Corosus> we'll see
L865[21:53:25] <parzivail> had to do that
a few times
L866[21:53:37] <parzivail> that all makes
sense to me
L867[21:53:38] <Corosus> heheh
L868[21:54:37] <parzivail> i recall
meeting you at minecon last year, btw. loved the panel
L869[21:54:50] <Corosus> oh we did?
neet!
L870[21:54:52] <Corosus> thanks :D
L871[21:55:42] <parzivail> it was the
modding panel with lex, dire, razzle and all them
L872[21:56:07] <parzivail> pretty
sure
L873[21:56:21] <Corosus> mmmm i think that
was the general modding one, both were similar for people give or
take 2 heh
L874[21:56:25] <Corosus> hard to remember
which was which
L875[21:57:40] <parzivail> whichever one
cojo took the group selfie :P
L876[21:58:04] <Corosus> ahhhhhh its all
such a blur
L877[21:58:41] <parzivail> surprised they
didn't have a minecon this year
L878[21:58:49] <parzivail> physically, at
least
L879[21:59:13] <Corosus> im just glad i
got to go to one before it died forever
L880[22:00:06] <parzivail> yeah. wondering
if it has something to do with the msft merger
L881[22:00:36] <Corosus> probably, i think
it was mostly a financial choice
L882[22:00:50] <parzivail> shame
L883[22:01:25] <parzivail> i decided to go
since i'd gotten into modding, glad i managed to get tickets for
last year
L884[22:01:35] <Corosus> :D
L885[22:02:04] <illy|Laptop> evening
o/
L886[22:02:50] <parzivail> still in awe
about how popular mods get, yours, ichun, vazkii's
L887[22:03:07] <parzivail> barely hit 300k
in the 2 years i had mine o.o
L888[22:03:25] <parzivail> dl's*
L889[22:03:47] <parzivail> evenin \o
L890[22:05:39] <illy|Laptop> def
registerItemBlock(blk:Block) {
L891[22:05:47] <parzivail> Scala?
L892[22:05:49] <illy|Laptop>
>.>
L893[22:05:50] <illy|Laptop> yes
L894[22:06:20] <Corosus> :> <3
L895[22:06:32] <Corosus> i got lucky i
guess, people like things that spin and wreak things
L896[22:06:43] <Corosus> and ive been at
it since the dawn of modding so it was easier to get noticed i
guess
L897[22:07:02] <parzivail> that's a good
point
L898[22:07:15] <parzivail> it's harder to
reach your target audience now too
L899[22:07:25] <parzivail> there're just
so many mods
L900[22:07:40] <illy|Laptop> ah back in
the days before MCP when men were men and decompiling was pain and
class patching was a pain
L901[22:08:05] <Corosus> still plenty of
room in adventuring / entity mods imo, but mostly everyone prefers
dem fancy factory building mods these days heh
L902[22:08:06] <parzivail> i remember
putting in modded .CLASS files into the jar with 7zip
L903[22:08:39] <Corosus> back in my day,
we had to memorized 2 character classnames and edit source files
uphill both ways in the snow
L904[22:08:46] <parzivail> that's actually
the target market for my previous (PSWM) and pet project (PSWG)
star wars mods
L905[22:09:00] <parzivail> exploration and
immersion
L906[22:09:12] <Corosus> \o/
L907[22:09:32] <illy|Laptop> yeah but
entity models are a pain... well models are a pain
L908[22:09:58] <parzivail> had to kill off
PSWM because we had so much content that it was impossible to
update as frequently as forge did
L909[22:10:00] <Corosus> yeah the vanilla
system is bad enough that anyone really serious about it basically
has to make their own system for it
L910[22:10:07] *
illy|Laptop hates 3D models and rendering.... why and a I doing
this again
L911[22:10:07] <parzivail> and minecraft
did
L912[22:10:22] <parzivail> i love OpenGL
as a system
L913[22:10:41] <Corosus> yeah.... the
endless porting really makes or breaks people/mods
L914[22:10:48] <parzivail> i'm also
eccentric
L915[22:11:15] <parzivail> as soon as i
couldn't port over our a) rendering and b) worldgen system, i
called quits
L916[22:11:45] <illy|Laptop> welp thats
the contract we signed when we started modding :P
L917[22:11:58] <Corosus> though entity
rendering hasent changed much in so long, the rest though....
egh
L918[22:12:04] <parzivail> we had over 60
million blocks in schematic-based structures that we couldn't
reimplement with the new blockstate system (long story) and
rendering for our lightsaber customization system wreaked
havoc
L919[22:12:09] <Corosus> oh god
L920[22:12:09] <Corosus> rip
L921[22:12:18] <illy|Laptop>
collection.Javaconversons._
L922[22:12:22] <illy|Laptop> damn it
L923[22:13:01] <parzivail> it was then i
said "screw it, i'm staying on 1.7.10 and just making
everything again but better"
L924[22:13:13] <parzivail> and here we
are
L925[22:13:55] <illy|Laptop> meh I want to
play my mod with the mods that are current so I updooted :P
L926[22:14:07] <parzivail> it's nice over
here, i made a binary model loader that supports the Jedi Academy
and Jedi Outcast 2 model formats
L928[22:16:49]
⇨ Joins: McJty
(McJty!~jorrit@ptr-9197ufovds9vpwg2k0c.18120a2.ip6.access.telenet.be)
L929[22:18:03]
⇨ Joins: Ordinastie
(Ordinastie!~Ordinasti@bronyville.me)
L930[22:21:19] <Corosus> a wise bird tells
me there is a magical solution to my api problem, involving
deobfCompile
L931[22:48:13] ⇦
Quits: SparkVGX (SparkVGX!~SparkVGX@121.99.164.93) (Ping timeout:
200 seconds)
L932[22:48:51]
⇨ Joins: SparkVGX
(SparkVGX!~SparkVGX@121.99.164.93)
L933[23:00:10] ⇦
Quits: Lathanael|Away
(Lathanael|Away!~Lathanael@p54960160.dip0.t-ipconnect.de) (Ping
timeout: 198 seconds)
L934[23:01:37]
⇨ Joins: Lathanael|Away
(Lathanael|Away!~Lathanael@p549601EB.dip0.t-ipconnect.de)
L935[23:16:39] ⇦
Quits: SparkVGX (SparkVGX!~SparkVGX@121.99.164.93) (Ping timeout:
194 seconds)
L936[23:26:11] ⇦
Quits: moony (moony!~moony@tx-76-4-59-100.dhcp.embarqhsd.net) (Ping
timeout: 194 seconds)
L937[23:47:09]
⇨ Joins: SparkVGX
(SparkVGX!~SparkVGX@121.99.164.93)