« first day (1850 days earlier)      last day (3467 days later) » 
00:00 - 19:0019:00 - 00:00

00:00
I have all the major browsers installed
Ill test it for you Joe :D
Pip
Pip
Here's all that I got as far as an error:
InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable
Joe
Joe
something about no longer available object
yea
Oh no Joe
Joe
Joe
i have the fix @Pip... Chrome
Joe your canvas doesn't scale correctly
It starts using antialising
Here do this
Pip
Pip
00:01
@Joe fuck you :D
Joe
Joe
lol
context['mozImageSmoothingEnabled'] = false;
context['msImageSmoothingEnabled'] = false;
context['imageSmoothingEnabled'] = false;
This will allow it to render crisp/pixelated correctly
Joe
Joe
hmm i was using the last one
do i need the others?
You're not supposed to need the others
But those are just incase
You also need another set of them
here is some CSS you need
	canvas {

			image-rendering: optimizeSpeed;
			image-rendering: -moz-crisp-edges;
			image-rendering: -webkit-optimize-contrast;
			image-rendering: -o-crisp-edges;
			image-rendering: optimize-contrast;
			image-rendering: pixelated;
			-ms-interpolation-mode: nearest-neighbor;
		}
Joe
Joe
oof im already 150 bytes over
dont know if ill be adding any of this haha
00:03
Lol but Joe its worth for the points
Joe
Joe
ill have to see what i can cut
You get more points for supporting more browsers
Joe :P Want me to optimize all your spritesheets?
Joe
Joe
not worth it if i get disqualified for being over 13k
i already did
With gimp?
Lol ill look at your final build :D
@Joe wait I cant find your build D:
Joe
Joe
what are you looking for?
00:09
the final compressed minified file :D
Joe
Joe
hmm i must have git ignored it
added zip dir
WHOA @Joe @Pip
You gotta check that out
ITS A FULL BLOWN GAME AS THE FAVICON
looks cool.
00:47
You have been visited by the programmer nightmare, you'll have to debug code with this: catch (Throwable T) {}
Pip
Pip
00:57
lol
:( the C++ lounge told me it was nothing but a unpleasant dream
Joe
Joe
01:11
@TheMuffinCoder so what did you conclude from your analysis of my scrubby code
Lol i didnt check yet
@Joe Hey Joe you know you can save more bytes
By copying the javascript code into your <script> tags
Then there's no need to have that additional files and reduces unneeded byte like adding src to it and file name
Joe
Joe
you are absolutely right
:D did i help you then?
Joe
Joe
thats definitely something, at lest 20 chars
so yea ty
@Joe OUCH i know why your code is so big now
The compiler can't optimize your code well because of all the classes and objects
Look here for example
n.velocity
It should had renamed velocity to another shorter name like abc
Joe
Joe
01:15
yea i saw that too
but i dont know how to resolve it
If you want you can manually just do
ctrl find and replace all
and just put something like adc
Joe
Joe
i bet the minifier has a property name flag hmm
@Joe One last thing
Don't include the spritesheet in your javascript file
It's way bigger than if it were a separate file and just have to load it
Once it gets encoded into base64 or whatever its called it can't be as compressed as the .png file can
Joe
Joe
its not way bigger its like 20%?
let me look into that
:P but isn't less than 20% enough just to help you reach 13k?
Lol i hope my tips help you
Joe
Joe
01:18
i guess that could get me there i liked having my build be two files
hey joe how many bytes are you over?
Joe
Joe
i think its just shy 200 bytes
:D
Then don't bother with the spritesheet yet till you try shortening the variable names
Joe
Joe
but i could stand to make more space
i still have features i wanted
:D
Then you can add fancy particles like mine :D
Joe I'm actually scared of what Kevin is going to do
Joe
Joe
01:20
thats on my list
If anyone goes with Webgl, they're already a scary entry
Joe
Joe
important thing is what you do, i just want to finish what i started
 
6 hours later…
user92578
07:17
Hi
07:31
Hi
07:42
\o
@TheMuffinCoder evil laugh
I figured out procedural generation for images
user92578
07:56
Kevin you had a thing for generating the 48 tiles for bitmapping from 5 smaller tiles, right?
I have a thing that generates both the 5 smaller tiles and the 48 bigger tiles
That can be easily changed to do what you want
user92578
I'm getting tired of making sprite mistakes and having to replace ~20 tile corners by hand
user92578
Was the tool on GitHub?
user92578
Got a link?, I don't remember your GitHub username anymore
user92578
08:00
sorry
user92578
thanks
user92578
I only get "PaletteGen"
user92578
I need to change a branch or something?
user92578
08:07
aight got it
user92578
So does the tool do what I want it to do? I supply 5 tiles to it and it generates the 48 tiles for me?
11 mins ago, by Kevin van der Velden
I have a thing that generates both the 5 smaller tiles and the 48 bigger tiles
Nope, the change is easy though
user92578
Ohh
user92578
Okay
user92578
Can you guide me trough it or do I start diving in to your code?
08:14
Just start hacking, there's one place where it saves the small file, just replace that with loading the file
user92578
output.save( 'out_minimal.png' )?
user92578
Ah, I think I see it
user92578
I want to read in an image that's 5*small_tile_size wide?
No
Look around the quoted message, it shows an example of the output
user92578
That quoted message from 11 mins ago?
08:18
Oh wait
I quoted the wrong thing
Or uuh, I didn't quote it
user92578
:D
I copied it
Aug 24 at 19:30, by Kevin van der Velden
user image
user92578
Ah
user92578
So I want to draw an image like that
user92578
And load that into the generator
user92578
08:19
That's two tiles high and 3 wide, right?
Yeah
Tile (1,2) doesn't need to be filled of course
user92578
(2, 1)?
Uuh yes
Derp
I'm doing other stuff =p
user92578
:D
user92578
Sorry if I taking your time away
Omnath has changed a bit since we last saw him! (before the emergence of the Eldrazi)
user92578
assert source.bytesPerPixel == dest.bytesPerPixel
user92578
That's failing
Make sure everything is 24 bits
user92578
now array index is out of range
08:26
Stacktrace?
user92578
Traceback (most recent call last):
  File "E:\Devel\Workspace\Visual\C++\GunHeroRemake\GunHeroRemake\GunHeroTool\Tile\generate.py", line 159, in <module>
    blit16x16( output, fullOutput, sections[section], fullOutput.I( x, y ) )
  File "E:\Devel\Workspace\Visual\C++\GunHeroRemake\GunHeroRemake\GunHeroTool\Tile\generate.py", line 93, in blit16x16
    dest.pixels[x + destStart] = source.pixels[x + sourceStart]
IndexError: array index out of range
Is your tile size not 32x32?
user92578
It's 16
user92578
Soooo
user92578
Replace "16" with "8"?
08:29
Pretty much
It's a prototype I made in a few hours that I opensourced for pip
user92578
Yeah I understand that it's not perfect
user92578
And I guess I also need to change the sections = (...) data
user92578
that almost worked
Uuuh don't remember, maybe
user92578
Yeah I got it
user92578
08:37
getting my hair cut, bb in ~1h
Grow your hair out! No need to get it cut
user92578
08:57
It looks ugly when it gets past a certain point
user92578
My hair style is making it up a little from the front
user92578
Cant do that with longish hair
user92578
Ive thought about getting a true metal hair
user92578
But I was like "nah"
Step 1 of procedural generation of my floortiles :D
user92578
09:08
Cool
Now to add some noise and done
user92578
:D
user92578
My first tiles were always just color + noise
user92578
Is this for the JS thing?
user92578
09:10
When is the deadline?
user92578
Ah
user92578
And youre making the reversed Invis Inc?
user92578
Sounds really cool
09:21
Hmm, value noise, I don't think it works 100% but
Damnit brain, that's an image on a monitor, it does not have depth
(I flipped the shadows and now my brain is refusing to not see the dark sections as being deeper)
(I think that means I did it right btw)
09:45
Oooooh, it's less than 13k zipped
3041 bytes :D
(I am totally not brute forcing every zip compression level to pick the smallest one, noo not at all)
(Incidentally, -6 is 1 byte smaller than -9)
user92578
Nice
user92578
I think I'm finally happy with the tiles:
user92578
user92578
Now I just need to figure out how the fuck am I going to blend those two together somehow smoothly
user92578
because that looks just horrible
10:56
@Tyyppi_77 You should be, they look good
user92578
thanks
user92578
The noise overlay is a bit buggy
user92578
But otherwise I'm satisfied
user92578
The system for multiple terrain types on the same layer is still a bit work in progress
user92578
But yeah
user92578
10:59
hmm
Jon
Jon
11:17
:D
why would anyone want to buy this? It apparently has 2 gpus on the same card
user92578
11:36
mum brought me coffee and a bowl of marshmallows :)
@Jon SLI but without the hassle, ooh and way worse cooling (comparatively)
user92578
11:49
That looks good, doesn't it?
user92578
I'd say so, there might be a bit too much difference in colour though
A bit darker perhaps?
user92578
The border?
user92578
I'm thinking about changing the whole foreground terrain border color to match more the stone color
user92578
11:56
The current sandish color might be too bright
user92578
How does this look?
user92578
12:11
@KevinvanderVelden I see the same thing, so yes you did it right :P
@Ali.S I would, but I dont have a screwdriver of the right fit
@Hjorthenify actually you don't need an screwdriver to take a single key out
you just need lots of force, and the belief that it won't break!
I thought you wanted me to disconnect it :P But yeah.. I guess I could give that a shot
Or should I make use of the warranty on it and just make them fix it?
If I do there's 33% chance that I'll be the one fixing it anyways :D
@Hjorthenify you sure, it's only 33%?
1/3 so more precisely 33.33333%
base on the little I have with warranties, there is 100% chance that I will eventually fix it, and 33% that they break it more :P
12:20
I'm one of three who fixes laptops at the place she bought it from :P
@Hjorthenify ok... that makes sense :D
So yeah.. 33% chance that I'll be assigned to it and another 33% that i'll break it even more :D
user92578
12:33
Can I write this shorter somehow? if (overlayBackgroundLayer->GetTileAt(m_PositionX, m_PositionY) && overlayBackgroundLayer->GetTileAt(m_PositionX, m_PositionY)->GetTileType() == m_TileType)
auto tile = overlayBackgroundLayer->GetTileAt(m_PositionX, m_PositionY);
if ( tile && tile->GetTileType() == m_TileType )
user92578
Well yeah, that I guess
user92578
Nice use of the auto, you really didn't know what it returned :D
@Tyyppi_77 C++? I would go with something like this:
if (auto tile = overlayBackgroundLayer->getTileAt(m_PositionX, m_PositionY))
    if (tile->getTileType() == m_TileType)
    {
        ...
    }
user92578
I see
user92578
12:40
As that's such a common pattern in my brush code, I just ended up making a macro
user92578
#define TILE_EXISTS_AND_IS_OF_TYPE(l, x, y, t) (l->GetTileAt((x), (y)) && l->GetTileAt((x), (y))->GetTileType() == t)
@Tyyppi_77 you wrap all but the 2 where it matters in parenthesis =[
user92578
Really???
Yup, x and y won't have ambiguity in resolving them, both l and t could cause problems
user92578
how?
12:43
TILE_EXISTS_AND_IS_OF_TYPE( condition ? front : back, x, y, t )
@Tyyppi_77 Make a get tile type at function in the background layer
user92578
13:35
What?
user92578
@KevinvanderVelden Good point, fix'd
If you use that function so often why dont you just add a GetTileTypeAt(index) function to your background layer?
user92578
Because it's the tiles responsibility to maintain that information
user92578
And it doesn't make sense to add that to the layer
user92578
It's better as an utility, tied to the brush
13:40
So you only need it in the brush?
user92578
Yup
user92578
14:05
This stuff gets really tricky really quickly
user92578
Might have to re-program this for clarity
user92578
Almost works now
user92578
14:18
I wonder if it had been a better idea to let every tile check it's mask by itself
14:39
Ubuntu would be a good distro for someone who has never used Linux before, right?
user92578
That's what I've heard, but I have no experience of it myself
College is (finally) starting on Monday, and they assume you have access to a Mac or Linux machine
So I'm finally going to try Linux
user92578
Ah
user92578
Now I'll do something easy, like a tree brush
user92578
All tough I need to add a new UI element for that, item variations
14:43
@Lokkij Ubuntu is easy, yes. Many are also recommending Arch though
Hmm
user92578
I wonder if I should implement a nice generic base for "stamp" brushes...
15:18
@KevinvanderVelden Hey kevin are you going to make another stream for the js13k like you did for the ludam dare? :P
Maybe occasionally
Oh okay :D
I want to see the master code in webgl
Right now I'm figuring out if my math library is dumb or if I'm dumb
It's not doing what I expect
15:19
I shall predict your winning position
 Math.random() * 10 | 0
Third place!
Okay im going try it for myself
:( it predicted that I'm going to get 7th
Okay, I'm blaming the library
I'm just doing translation and it's rotating
So, anyone know any good javascript math libraries?
For webgl?
user92578
15:25
@KevinvanderVelden I usually just blame floating point precision :D
user92578
15:41
Joe
Joe
@KevinvanderVelden most libraries are > 13k anyways?
@Joe that's what minification is for but yeah
Joe
Joe
even minned i mean
Well, I've also got a javascript compiler that removes dead code
So, yes, the library is 36k unminified, but the total thing is currently 6k
Joe
Joe
nice
15:47
Hey joe any new features?
Joe
Joe
i have a new feature called 13281 bytes total
trying to figure out if thats < 13k
How are you guys compressing it?
Joe
Joe
standard zip after concatentating and minifying all html and js
I use the closure compiler and
Ultra by hand optimization
Joe
Joe
"uglifyjs"
15:48
I write all my code in 1 file and use no classes and very few objects
I've got closure, then uglifyjs (takes off a whole 80 bytes) and then compression
@Joe @KevinvanderVelden look at this >:^)
user92578
Joe
Joe
15:49
depending on the uglify version... it might not be doing name mangling
user92578
Sorry for the spam, I'm just making some progress :)
Joe
Joe
@Tyyppi_77 its cool man im jealous
@Tyyppi_77 you've seen what happens when I make progress =p
Im jelly
Joe
Joe
i never made an in game editor
user92578
15:49
Thanks guys :)
user92578
I'm still suuuper hyped about this
Lol i always love the art style @Tyyppi_77
My pixel art always looks like trash if i try to do anything bigger than 16x16
user92578
All my tiles are 16x16
user92578
But thanks a lot
oh LOL
See, it has so much detailed I thought it was 32x32
user92578
15:51
Thanks
We have to make a 3D game for next years js13k
Joe
Joe
i just wrote my first C style one line song algorithm and its awesome
"t*(3&t>>10) - t*(6&t>>10) + (t*(9&t>>10))&128" wurstcaptures.untergrund.net/music
and that link totally didnt work
rip head phone users
Joe
Joe
haha oh sorry yea that site starts with volume at 99999999
Joe
Joe
16:04
yea ive been reading all of this guys stuff
I have spent the past 10 minutes listening to those songs,
I think I killed my ear drums
user92578
Imma call it a day, bye guys!
Bye tyyppi!
Here takes this with you
(>")> here's a banana
user92578
Oh, thanks a lot!
user92578
16:12
:D
16:35
... so, flipping the matrices around before uploading them works
For some reason
16:52
Hello guys, I'm not sure if it qualifies for a question here, so asking on chat:
I was wondering for a while, how to program a 'world' simulation. I dont think about physical world or physics rules but rather interaction of several entities. I tried to google some articels but all i can find are articles about our world being Matrix-Like simulation ;). Is there anything you could recommend for reading ?
Ouph, that's probably an incredibly broad topic
well let's try to narrow it. Let's say i would like to simulate a life in the village. Without physics rules. Just several citizens doing their daily stuff - farming, eating, talking (or other social interaction between them). Those things would modify citizen's indicators. If some are low, citizens would die. If some are high, citizens would reproduce.
Without some really deep stuff, maybe some dice chance based.
Jon
Jon
That enermax PS I found in my basement doesnt have a PCIE connection... damnit
17:09
how to program a "world simulation" woa... that's a big one
@IcyDefiance @Lokkij ooch stuck hard on sequence peak detector
@user2475983 dwarf fortress does some of that
There's a few articles (mostly interviews) floating about
Dwarf Fortress is free but not open source, right?
TIS-100 is fuckin hard, once you get going on it
where I am, I'm not stuck trying to optimize, I can't even get a working solution
can't stuff enough code into one node
(Holy shit of dwarf fortress were open source, it'd probably be way better with benevolent dictator for life making content and the community improving the code (say, multithreading(#@&%#@%&, better interface))
2
17:25
well maybe I said it just too greatly ... just simulation of entities interacting in some kind of world. Like the village example i mentioned ealier. The village is some kind of world for the villagers :). But thanks, gonna check out dwarf fortress articles.
good example would be 'game of life' but that's fairly too easy :P
I'd not call game of life a simulation
Also, yay! I has input working
And basic rendering
Pip
Pip
17:56
eyo!
Can anyone recommend an IRC client for Linux? I'm using HexChat for Windows but I don't spend a ton of time there
@Joe I approve
It acutally sounds kind of cool to change the last number to a 127
Ooh 90 sounds cool as well
And 40 :P
Just messing with this is a surprising amount of fun
Joe
Joe
i got sucked into it for like 2 hours
Pip
Pip
Man
Joe
Joe
i think im just going to use what i have right now and submit
Pip
Pip
This is actually really entertaining
@Joe go for it!
Joe
Joe
i just wanted something more melodic
its soo repetitive
dont understand how to do that yet
Pip
Pip
18:03
HAHA
t*(2&t>>10) - t*(1&t>>10) + (t*(9&t>>10))&128 - t*(23&t>>10)
The longer you seem to make the chain the more variation there is
Joe
Joe
((t*5&t>>7)|(t*3&t>>10))&255 is what i presently have on the game page
Pip
Pip
t*(2&t>>10) - t*(1&t>>10) + (t*(9&t>>10))&128 - t*(23&t>>10) + t*(1&t>>10)
I like it
Joe
Joe
i didnt change it i just found it
which sucks
its awesome though
Pip
Pip
Interesting
((t*5&t>>7)|(t*3&t>>10))&255 ^ t*10 + t*(t*2>>t) *t*t*t*t*t*t*t*t*t
I got some legible melody going with ((t*5&t>>7)|(t*3&t>>10))&255 ^ t*10 + (t*t ^ t >> 10)
anyway
too much of a time sink for right now :D
18:28
It really annoys me when you're hands are so slow/weak that they slow you down while writing
My summer hw is so easy but i cant type it out :(
18:42
@Joe note the heavy use of prime numbers in the ones in the video
that's one place the variation comes from
Pip
Pip
Fucking online class bullshit
MOV UP, ACC
MOV ACC, DOWN
MOV ACC, RIGHT
00:00 - 19:0019:00 - 00:00

« first day (1850 days earlier)      last day (3467 days later) »