« first day (1360 days earlier)      last day (3666 days later) » 

6:02 AM
I know most methods I use on a daily basis, espescially in my own code base
The killer is when I'm learning a new framework or something... in a text editor I have to tab over to some docs, scroll through, find what I want
 
:D
yeah
 
In an IDE, I just start typing and see it all listed
Part of the reason dynamic languages drive me a bit nuts.. but I'm working on that. :)
 
aye
I guess for me, having used Unity for over 2 years now and not much else, am able to home in on what I know
haha
 
When you really know your language, I think it's another story :)
Good luck memorizing the whole .NET framework, though. ;)
 
After spending half a week trying to track down a bug....
 
6:05 AM
yeah... nah. :p
most-used .nettish thing I use are Lists, love List
 
I find out I typed Log instead of log one time..... Glad that's over
 
half a week? damn :(
 
@MickLH How does that even happen?
 
if I mispelled like "Debug.Log" as "Debug.log" accidentally, unity would alert me from the get-go
 
Yeah, static typing is good for that..
 
6:07 AM
Because I thought the bug was in my script engine, I thought it was failing to resolve the symbol for some reason
 
Ah scripting engines.. I have to implement one soon :(
 
So I was digging all through the object hierarchy code, thinking it was related to all the Math APIs being inside an object
 
I think I might just write mine in C# since the backend is already C# anyway :D
 
heh
 
But I was just being silly, it could not resolve Log because Log is not a function....
Turns out there was no bug at all, it works great :D
 
6:08 AM
least you got there!
 
@MickLH Nice. :P My path-finding ALMOST worked my first compile... except I accidentally had a sign flipped -_-
Spend 30 minutes stepping through to figure that out
 
lol man it's always so close, but so rarely spot on the first try
although! a week or two, I got that holy satisfaction
 
Every time I complete a feature, I hit compile to test it out.. cringe and then have to solve like 4-5 bugs and then it all works
I should unit test more and maybe these problems would go away.. :)
 
Unit tests... I just play through all scenarios I can think of and cross my fingers lol
usually works well =D
 
lmao
That's what a unit test is for... except to cover your ass when you lose track of them all. ;)
 
6:10 AM
Oh it was the Sine solver, I wrote a full page of hardcore-ish code and it worked flawlessly
It was quite a beautiful feeling man, I want more of it lol
 
It's good when it all works first try :)
 
I've had that happen a couple times... but alas, rarely do things go that way.
Or they do, and I spend 30 minutes trying to break shit because I'm convinced there's no way I got every case
 
Haha yeah I still spent at least that long trying to break it
 
@VaughanHilts I guess for my game, most everything is singled-out on their own and rarely influenced or affected by other things in the game, everything's pretty straight-forward
haha
 
>.> I always start a project convinced I'm going to isolate and abstract everything
And then... shit starts getting tangled and I stop giving fucks
 
6:12 AM
lol...
 
I finally killed the habit last year. :D
 
I've got like, 320 individual scripts/components, and maybe only a handful of set/get methods, everything's public lol
nice
 
Everythings public? lol
Oh god
I can only imagine how badly you could fux stuff up if you tried :p
 
yeah, ease of use, and again, hardly anything interacts or affects each other, apart from 1 or 2 scripts that I keep a strict eye on
 
heh, well that's a plus then
I try to break my stuff up into systems that don't really interact
 
6:15 AM
just a matter of making sure I call things consistently
If I were in a team, I'm sure it would be done much differently :p
 
They just manipulate properties, then hand off to the next 'system'
process, rinse, repeat
 
yep yep, that's a good way of doing it
 
It works okayish, the problem is breaking down systems
Like right now, I have a 'CombatSystem' which feels way too broad
But I really don't know how to break it down, so
That reminds me, actually. Does anyone know of any decent books on designing clean game code / patterns?
I feel like someone has probably pain stakingly already done this before.. :)
 
some of my classes have heaps of variables.... other times I'll fork them off into their own class for the sake of simplicity, just comes down to how bothered I can be, or my rough prediction of how confusing it might get
programming books... I have never read one D;
 
If it takes more than a minute to figure out what's going on, I try to refactor
I figure if I can't remember \now\, I'm defintely not going to remember \late\
 
user92578
6:25 AM
Can't get even collision to work =(
 
user92578
6:39 AM
I just implemented my first pixel perfect collision ever
 
whoo
 
user92578
but now my player disappears when the window is resized...
 
user92578
or maximized
 
user92578
or moved
 
good ol' bugs
 
user92578
6:43 AM
Now I have 15 minutes to implement jumping
 
OTL
have anyone used pygame with thread?
 
user92578
Once
 
user92578
What's up?
 
while gtk.events_pending():
gtk.main_iteration()
this piece of code won't run on thread
 
user92578
What's gtk?
 
user92578
6:46 AM
a GUI
 
aye.
 
pixel perfect is over-rated.
long live the bounding box.
 
user92578
Why GTK?
 
@VaughanHilts haha, amen.
 
user92578
I use only bounding boxes to achieve the collision @VaughanHilts
 
user92578
6:47 AM
And some math
 
bounding boxes for pixel perfect collision?
one bounding box for each pixel?
 
user92578
No
 
If you're using bounding boxes, you be doing it wrong
 
hmmm that's a good question maybe I should abandon GTK. I am just using GTK since original dev of this project was using GTK.
 
user92578
6:47 AM
I guess it really isn't pixel perfect, but it looks like it
 
Unless you did like Icy said, and if so, I suggest you re-evaluate
I assume he's just using bounding boxes
Is it just a rectangle around your player?
 
I love Unity's 2D polygon collider... lets me add points and resize the points/bounds in the editor, soooo quick and easy
 
user92578
Basicaly what I do is when the entity collides, I move the collided entity to a coordinate from the other entity's bounding box...
 
user92578
if deltaX > 0:  # Moving right; Hit the left side of the entity
    rect.right = entity.getRect().left
if deltaX < 0:  # Moving left; Hit the right side of the entity
    rect.left = entity.getRect().right
if deltaY > 0:  # Moving down; Hit the top side of the entity
    rect.bottom = entity.getRect().top
if deltaY < 0:  # Moving up; Hit the bottom side of the entity
    rect.top = entity.getRect().bottom
 
user92578
This is really all I need
 
6:49 AM
So.. bounding boxes
 
user92578
I've never done anything like this advanced before, I've before used only if collision -> Don't move
 
user92578
wich causes the player to hover on a platformn when jumping
 
I ran one of those code cost estimators on my engine for fun
 
@MickLH Those things are a joke, some of my projects come out in the millions >_>
 
6:50 AM
@VaughanHilts obviously you're very highly skilled
 
@Tyyppi_77 You've implemented a fully working bounding box system.
 
user92578
Okay
 
user92578
But it looks pixel perfect :DDDD
 
lol
 
user92578
atleast with rectangular objects
 
6:51 AM
I imagine your box fits around your sprite well, which is why bounding box is usually.. enough
Now, do it with a circle and watch it fail
 
user92578
I DONT NEED YOUR CIRCLES
 
there are always bounding spheres
 
@VaughanHilts that's what it tried to do
 
unless you have a big pointy-out bit, or a large missing gap, call it good enough
 
err, bounding circles in 2D
 
6:52 AM
@IcyDefiance Get out of here with your naysay
 
user92578
no really, it's a tile based game
 
user92578
who uses circles anyway?
 
or if you're really ambitious, bounding ellipses
 
Actually that's always what happens I think, unless you tune it to skip all the non-code stuff
 
I do... but only when I have a physics engine handy. :)
 
6:52 AM
I use circles for small items, or for invisible checks
 
user92578
I'M A STRAIGHT MAN! (get it? rectangles are straight?)
 
... only if they're axis aligned. ;D
 
user92578
@BlueBug What do you need GTK for? Wasn't this about pygame and threads?
 
apply rotation... crookedness intensifies
 
user92578
6:53 AM
oh right
 
Pft, who writes their own collision anyway
 
user92578
I also need to implement z-indexing
 
user92578
I would have loved to use Box2D, but there's no wrapper for Python3
 
Wait, is this for ludum dare?
 
user92578
no
 
6:54 AM
Okay, good.
 
user92578
I don't have time to attend
 
GTK to handle windows/mouse events
 
user92578
How is it good?
 
user92578
@BlueBug Why no pygame events?
 
Because rolling your own systems in a game jam is generally a bad idea. :)
 
6:55 AM
@Tyyppi_77 do you have to have GTK if you move around your windows ?
 
user92578
Yeah... But Python really doesn't have that much systems
 
So after adjusting everything to be more realistic, the codebase clocks in at 25K LOC counting only the useful lines
 
user92578
@BlueBug PyGame does not require a GUI-Library to be used, it handles window moving and resizing automaticaly
 
yeah that makes more sense. GTK he uses, I think, is a bit pointless and just makes project more complicated for no reason at all
 
user92578
That sounds true
 
6:59 AM
Given that every line is high quality, I think the adjusted estimate is pretty reasonable, a year of work for a team of 6
 
So, how much cash should you have raked in?
 
yeah I got rid of his stupid GTK calls and replaced with pygame builtin calls
works fine
 
user92578
I have 8 tiles & a player, and my FPS is 18
 
@VaughanHilts somewhere between a half mil. and a mil. according to the app :P
 
user92578
There might be a performance problem
 
7:05 AM
@Tyyppi_77 That sounds a touch low ._.
 
user92578
There's like an invisible piece of code somewhere in my codebase that does this: if event.type == pygame.MOUSEBUTTONUP: entity.destroy()
 
lol
 
clicks
?!
 
DESTRUCTION!!! WHOOOOHAHAHAHAHA!!!
@Tyyppi_77 I have nothing to do with this bug
but I like it
 
user92578
Hmmmm, should I trust you...
 
7:07 AM
no
why would you?
 
user92578
BTW this fixed the performance bug: if self.movement != (0, 0): # Collision test
 
user92578
Now I only check for collision if the entity is moving
 
user92578
No, it's actually if MOUSE_BUTTON_WAS_RELEASED_ON_THE_TITLE_BAR: entity.destroy()
 
what an elaborated trap.
 
@Tyyppi_77 probably a good idea, otherwise with 9 objects you're checking for collisions what, 64 times? O(n^2)? and you cut it to O(n), or 8 checks
 
user92578
7:10 AM
But anyways I have to go now, I'll be expecting a bug fix for this when I get back.
 
user92578
@Icy yeah
 
of course this means you'll have problems once you have 60-some things on the screen, lol
 
Don't check static objects against dynamic objects
Only check your dynamics against statics
 
spatial partitioning!
 
Assuming he's making a block based game
I guess his spatial partition is his map :)
 
user92578
7:12 AM
I have a list of entitities currently: tiles are also entities
 
user92578
ill leave you shout me how stupid that is, bye!
 
whoa, random idea. I should change the syntax of my engine from entity.GetComponent("name") to entity["name"]
all my code would be so much more compact! :O
 
hehe bye
 
That's... pretty much how it goes.
 
this idea just hit me like a ton of bricks, totally out of nowhere
 
7:13 AM
@IcyDefiance Why aren't you using generics? :O
 
hmm?
 
C#, right?
 
yeah
I'm not sure how generics apply here
 
entity.GetComponent<TransformComponent>();
That would win you some strong typing, too
 
oh there's that, but what if I want more than one component of the same type?
 
7:14 AM
Does that ever happen?
 
Optional name parameter?
 
Optional predicate
 
optional name... actually this can be pulled off.
the only real advantage is the strong typing, but strong typing is pretty good
I'm thinking of cases where an enemy entity might have two int components representing its health and mana, or something like that
 
that's the one thing I can't stand with website JavaScript and even PHP these days, having coded with UnityJS and C#... variable types
web code variables feel so naked and wrong
 
lol I'm with you there
right now I just cast whatever GetComponent returns
 
7:17 AM
yeah
 
of course casting has a cost of its own, so I can save a small amount there too...
might have to work on this
 
@Chris I am totally inverted on this issue
 
It's handy yet it's not
 
I love the free form (lack of) structure in JS
For extremely fast prototyping
 
yeah
 
7:19 AM
Bah, I can't stand it
I like knowing exactly what I'm gettting..
 
I hacked together a functioning computer algebra system in about 2 days in JS
 
that's why I clicked with UnityJS from the start...
muchly like JavaScript but with ":Foo" added to all the vars
 
Although, being able to just tack properties onto an object is handy
 
also wrote a high level C-like language to x86 compiler in about 2 days in JS
 
haha
 
7:21 AM
I actually do find myself using it for quick engineering tools
 
I feel like more loosely typed languages are for the experienced.
 
Even though I have Mathematica, I'm often more comfortable coding in chrome dev. console
 
I guess if you have good mental fortitude to keep track of everything..
 
many of my fellows started with loosely typed language and they struggle when they try to transition to more structured language o_o.
 
if the variable is named well, it should read and look straight-forward
 
7:23 AM
Well, the trick is...
How do you know what operations an object has?
 
comes down to knowing what you're working with?
 
I guess if you get passed a calendar, it's probably safe to say it's a calendar
 
I think the worst part of loosely typed languages is there's no way for an IDE to know what type a certain variable is at a certain point
 
mmm
 
with C#, I can type a variable name followed by a period and boom, I get a list of everything inside the class
can't do that with php
 
7:25 AM
So, Intellisense.
 
right
I was trying to work with MyBB's code last month
 
most php things, everything's it's own bloody function lol
 
had to keep switching back and forth between files to be able to use their classes
 
less you make your own class
 
with C#, I could just hit period and see whatever's inside the class
 
7:26 AM
Intellisense++. hails to creators of intellisense
 
Yeah, a lot of PHP code I've seen is just functional hell
 
As if I could alienate myself more
 
MyBB is actually pretty good that way. I really like how they designed it.
still a pain to work with though
 
I think intellisense is totally overrated
 
WUT
 
7:27 AM
If it saves you having to alt-tab, it's good
 
pffft, code completion is the best things since sliced bread.
 
I can't deal with the tiny lagspikes it introduces while I'm typing if it decides to eat any of my keys
 
oh well that's just your IDE
 
lagspikes? only in slow IDEs :D
 
absolutely no issues with that in VS
 
7:28 AM
I mean I guess yeah, if you know your code, and what you do, you would not necessarily need intellisense.
 
in Eclipse, yeah, that code completion really pisses me off
 
I've never used any IDE ever that I was not slowed down by their code completion
 
Eclipse is yucky
Sublime is instant
 
I'm thinking about VS specifically
 
(though it's not 100% intellisent)
 
7:29 AM
I haven't programmed without intellisense. I started my programming with intellisense. I can't imagine my life without intellisense.
 
I've never had VS eat my keys
 
MonoDevelop's intellisense lags like a snail, fffff
 
can't say I've ever seen that in VS, even on weak-ass school computers running VS2010, and 2013 is a million times better yet
 
hehe
 
Speaking of VS
Anyone want to share their IDE layout? I'm curious
 
7:30 AM
I remember reading article about intellisense. Author said it "encouraged" programmers to use ridiculously long type-name and still get by with it since intellisense does the trick for them.
 
VS didn't eat the keys, the auto-complete feature does when it thinks I've pressed Enter to tell it to finish something, but really I've typed exactly what I want and am ready to move on to the next line
 
@MickLH oh there is that, at least if you use variables or function names you haven't implemented yet. there's also a way to disable that so you're forced to hit tab to autocomplete.
I'm pretty sure VS's C++ environment is that way by default, actually
C# is not though
 
I think intellisense is great for many people
 
@BlueBug This sounds very true... tbh I hate using abbreviated variables, except for little int vars in for loops
End of the day, if you can code in a timely fashion, you're doing well :D
 
mine, GraphVisualizerEventHandler
 
7:35 AM
Okay, VS users
I have the plugin for you
 
@VaughanHilts simple, pretty much all code: i.imgur.com/bb9pk8e.png
dark theme is important. cannot program without dark theme.
other than that, I don't care about much
 
CutsceneRigidbodyJumper
FireMageFlameBallExplosion
GoGetLaxativeFromTownCCTrigger lol
LevelCreatorRoomSequence

some of my longer ones
 
ImmediateRadiusSkillAction
for me
 
I keep pretty much all my variable and class names to two short words, maaaaaybe three
 
7:37 AM
heh
 
And with this, I think it's time to sleep.
 
a lot of mine are like extensions of another class, but not inherited, just a separate component for ease of inclusion
cool!
 
@VaughanHilts UR GAME?!
 
EVIL SERVER PATHFINDING
 
@Chris The worst offender in my codebase is HyperArcCotangent but it's not bad at all because I have an alias for it called acoth
 
7:39 AM
 
@MickLH hahaha. Mine's probably PassageFadeToBlack, which makes almost no sense and is just as badly abbreivated as pftb
 
You know what really pisses me off about C# these days
Braces taking up their own line
 
@VaughanHilts wat
 
hahaha
 
u wan fite
 
7:40 AM
loool
 
my theme, I don't like too dark, or too bright, grey and red color to highlight "names" most fit me.
 
INLINE NAVIGATION IS GOD
No longer will I ever fiddle through my solution looking for a class
 
I just do that Java style
 
find variable with type of said class.
click on variable.
press F12.
click on variable type.
press F12.
???
profit.
 
I just control + click
 
7:42 AM
Except not strict at all, all the helper / support classes go into the main implementation file too
 
@VaughanHilts just make your class name ridiculous long, so long that it tells you where in folder it will be located.
 
Oh wait, I think that's a Resharper thing..
 
 
#SWAG_CLASS_NAME
 
Look at my pretty MonoDevelop color scheme for Sublime lol
 
7:42 AM
^ See, he knows whats up with the braces
 
@Chris white background!! my eyes, they burn!!
 
@IcyDefiance I know, right
I find I can't stand dark themes
 
too... too bright.
 
and all these colours
too distracting
 
7:43 AM
and the K&R braces
 
I like that, except that blues and green.
 
It's called "Son of Obsidian"
 
I just can't understand why people use themes that are not the Solarized color scheme
 
I'll have to check that one out
 
I tried it.. colours pop too much
 
7:44 AM
@MickLH solarized...this one? ethanschoonover.com/solarized
 
yep
 
actually I could use that
even the light version
 
@Chris That's the whole point, it's calculated to optimize between highest visibility and lowest contrast variance
 
.. I suppose I could give this "solarized" a try.
 
@MickLH but I like my stark white ;_;
 
7:46 AM
@Chris I really used to just use stock colors whatever they were on every editor, until I tried using solarized with a large bold font
 
hmm
 
I no longer have a headache at the end of the day every day lol
 
it's too colorful, but I like color choices. Maybe if I could like saturate it to dull out a bit?
 
@VaughanHilts Heh, they call it the one true brace style for a reason :P
 
like for me, the colours are opposite what I'd probably prefer (obv I could tweak, but.)
"var" is all blue, stands out more than the actual variable itself -_- not good when I'm trying to read
operators and types stand out more than the names I've chosen lol, not very helpful
 
7:48 AM
That's the theme, which I didn't make any suggestion on
I just brought up the color scheme
 
right right
 
I personally switched the layout around too, but the colors themselves are easy to tell apart
 
I'm lazy :D
 
I just use whatever the language imposes.
 
fair enough _b
 
7:49 AM
But that does not mean I have to like it. :D
Or rather, the language style guide.
 
Hmm, I might try tweaking
 
read that as twerking, I need to sleep.
 
lol
 
I don't think this is right...
 
#hellish_theme
actually no, I kinda likes.
 
7:51 AM
lol it's like a running microwave
 
that's puke-inducing
 
Good god.
Abort, abort, abort.
 
going to bed night night you handsome/beautiful fellas xoxo <3
 
Goodnight BlueBug
 
7:55 AM
 
You know
 
hmm...this I could get used to
 
I think I should dedicate a day to just learning my IDE and keyboard better
 
@IcyDefiance Where's the rest of the colors?
 
@IcyDefiance How'd you change the scheme on the right, too?
 
Mmm, gonna edit sublime theme using this web app :D
http://tmtheme-editor.herokuapp.com/#/theme/Solarized%20(dark)
 
Well
i'm trying out the solarized for a bit
I'll see if I like it.
 
bah, web app is timing out, maybe tomorrow
time to put my sunglasses back on
 
Enjoy. ;)
 
 
1 hour later…
9:27 AM
morning
 
hi
 
Hey
 
9:42 AM
@Lasse hello
 
hi
 
I had a dream to night about you being at number 1. in the hwo competition
LOL
 
lol you have too high expectations
 
:P
Was just a dream
I didn't control it
 

« first day (1360 days earlier)      last day (3666 days later) »