« first day (1361 days earlier)      last day (3675 days later) » 

9:00 PM
^ Me right now
 
Pip
    git add -all
    git commit
    (write your commit message, then press escape)
    :wq
    git push origin master
    (type your password)
    done
 
Feels good man
 
Pip
so you earn 4 of 5 dollars?
 
Yeah
 
Pip
nice
 
9:01 PM
Yo dawg how do I use System.Print to write "Hello world" in that black box?
 
It's kind of a gimmick how they call themselves Fiverr, because Five isn't what you make, it's what you spend
@Hjorthenify That'll be $5 first
 
But .. but..
 
NO BUTS
SUBMIT A GIG REQUEST
 
hash is gonna be the first one to reach the pizza fund challenge
 
You already made enough for a pizza! Can't this one be on the house? :(
 
9:02 PM
@Grey I already did
 
shame
 
@Grey Dat's right tho
@Hjorthenify Alright. Sell me your soul and I'll give you a dollar off
 
Shipping and Handling
 
^
@Grey Shipping and Handling
What
 
Charge for him to ship his soul
 
9:04 PM
@hasherr I have already sold my soul for a pizza once...
 
and you need a special vase to store it
to keep his soul in your possession
you must chant: golmerificus totalis 5 times a day in the vases presence
Very high maintenance souls are.
My partner hasn't got on yet
 
Hey guys, anyone in here experienced with 2d player movement, maybe some basic physics?
 
I'm getting worried
 
Pip
some
 
Pretty much everybody here, yeah
 
Pip
9:05 PM
@Grey who is your partner?
 
what
 
@hasherr gtfo
 
???
Didn't even say anything, brah
 
THE HISTORY
 
Pip
yeah, Hash is correct. Most of us are fairly experienced in 2D physics and player movement
 
9:07 PM
wait what
 
Pip
stobbit
 
Haha alright. Well in my top-down game I'm implementing more natural movement for the player with acceleration and drag. It works well except for one small thing. If I don't comment out the two bottom if statements the player instantly stops when releasing the keys (though he accelerate fines) but if I do comment them out I get weird behavior where it is near impossible to change direction sometimes:

if (oldKeys.IsKeyDown(Keys.A))
velocity.X = -1;
if (oldKeys.IsKeyDown(Keys.D))
velocity.X = 1;
 
It isnt letting me push?
@Pip
 
Velocity is simply the direction the player is moving since in the move() method is gets normalized.
I know my way of handling it is primitive.
 
Pip
what do you need nao? um... do you have the remote repository set up, locally?
 
Pip
@Bagofsheep I have some reference for you
that should work
 
tried that and get fatal: remote origin already exists
 
Pip
oh......
alright
 
I saw that link the other day. The problem with that is in the code he uses some sort of phaser physics engine or something.
So all of the code isn't being shown I think.
For physics anyways.
 
Pip
not for the concept
but the physics is all there
 
9:10 PM
Alright.
 
Pip
do git remote add PygameGUIs (link here) @Serial
then use that instead of origin when pushing
did it work?
wait @Serial
don't do that
do:
 
I see. He is directly modifying the velocity direction with the acceleration but the way my move method is setup does not allow for that since objects can move in 360 degrees.

public virtual void move(GameTime gameTime)
{
setOldPos(position.X, position.Y);

if (velocity.Length() > 0)
velocity.Normalize();

velocity = Vector2.Multiply(velocity, CurrentSpeed);
position += Vector2.Multiply(velocity, (float)gameTime.ElapsedGameTime.TotalSeconds);
}
 
It worked
 
Pip
git remote rename origin oldorigin
then git remote add origin (link)
 
It did two first commits though haha
 
Pip
9:14 PM
lol
is it a private repo?
 
Yeah
 
Pip
add me pls
 
whats your username
 
Pip
same as everywhere else :P
 
nevermind
 
Pip
9:16 PM
lol
 
There
 
@Pip stop teh cyber bully
 
Pip
thanks
@Grey ?
 
(talking abot hsh)
 
Pip
ah
 
Jon
9:22 PM
ok, later
 
Pip
cya man
 
Later.
 
@Grey i am not cyber
 
Pip
@Serial that looks..... really good already
 
@Jon Wait did you die?
 
9:23 PM
@hasherr ur cybr buli
 
@Grey NO I NOT
 
ok
 
Thanks! I can add comments
 
Pip
a request: when you continue working on this, can you inform me when there is a new version? Also, tell me if it will break my game, I will have to fix my game if that happens
@Serial :)
 
It should work for your game
 
Pip
9:25 PM
not what I meant :P
I mean, if the new versions would break my game, if using an older version
 
huh
 
Pip
like, if you change the values required to instantiate the GUI item
or change their orders, etc
 
All you have to do is create a class that inherits my Frame class, then create widget instances and tell them what to do using methods
there is a Test class in Example.py
 
Pip
again, not what I meant :P
say I am using your GUI
and that version requires x, y, and z to make a new instance
if a new version requires z, y, x (or x, y, z, and a), that would break the current implementation
 
programmer vocabulary of the day: breaking change.
http://en.wiktionary.org/wiki/breaking_change
 
Pip
9:29 PM
there we go
that is what I meant @Serial
 
from the link, see also: backward compatibility. make that the second vocabulary of the day.
 
Pip
that one I knew
 
Oh No I understand, I was just explaining how to use it
I get exactly what you mean
 
Also its worth note that if you are collaborating, don't commit anything that doesn't build. If you aren't collaborating, don't upgrade the version you are using if you don't want to risk something breaking
3
 
Pip
alright
 
9:30 PM
ill tell you when I update it
 
Pip
kk
 
@SpartanDonut isn't that what branches are for?
 
Its not very pretty right now but its just for testing, Images can be used
 
just don't merge to master until you know it's working and it passes all your tests
 
@IcyDefiance yes.
 
Pip
9:32 PM
@Serial nice. I may just use the button class, etc, you already made
 
Yeah but when the merge happens if you break the main branch you are breaking the rule I was talking about. It doesn't really change anything
 
@Pip well they kinda go with the Frame but you can alter them
 
Pip
:)
 
Man, this is the most fun I've had programming since Ghostly.
Working on a fun project with a team and doing Fiverr gigs on the side
 
Pip
9:33 PM
do is all I do instantiate a button class, after import? Does it require pre-initiating, like pygame.init() does?
 
And Pizza!
 
Pip
@hasherr which project? MT? or something else?
 
My other project
 
Pip
ah
we have to have a meeting sometime
 
@Pip well all the widget's first parameter are Frame, and thats what they are blitted to
but you could make a frame as big as the screen and just make it transparent
or change the widget code
 
9:41 PM
Hey guys
Guess
What
I get my CPU this week! :D
Hopefully either Wednesday or Thursday
 
"this week"
I keep forgetting your week starts from sunday
that's weird man
 
When does your week* start?
 
how can a week start from sunday
monday
 
when i hear "this" in the future sense, I always assume the meaning is the week about to come
 
Oh
 
9:43 PM
Does that mean hasherr actually enjoy monday when the rest of us hates it?
 
probably
 
No, I hate mondays
My schoolweek/workweek starts mondays
But I've always seen Sunday as the beginning of the week
 
O_O Thats... Different!
 
lo
 
Pip
@Serial so, could I pass it one of my "screen's" surfaces? My game has several screens, and the dominant one (controlled by the Game() class) is the one shown on screen. Could I pass the screen surface based on which screen it is on, then?
 
9:44 PM
SU->M->TU->W->TH->F->SA
 
Pip
@hasherr same here
that is the US way
 
Huh, must be an American thing
 
if i add a like me on facebook or follow me on twitter button to my game do i have to follow any kind of standard for the button image?
 
Pip
just use their logo, or the like symbol, or etc
 
Hextraction's Giving Away The Art! Check out our @creativecommons Open Game Art Initiative! #OpenSource #gamedev https://www.youtube.com/watch?v=-uY5QMzkfuM
 
9:46 PM
@erebel55 they have pretty strict rules about it, actually
 
@hasherr the difference is, your calendar has sunday on the first column, while ours has monday there
 
@erebel55 that's...actually a good question. but I don't think so. give me a minute, I'll try to find something about that.
oh Seth might know
 
I do
must use their assets
must not deface their assets
 
i've see a lot of different variants for it.
 
must not alter the implication of clicking on the button
 
9:46 PM
a lot of people are doing it wrong than
 
Any advice on optimizing particle collision? Right now when I render ~200 particles my FPS drops by 30 (to 50fps) :/
 
@Hjorthenify use a grid
 
you MAY change the appear to match the style of the site, but only insofar as it matches all other social media icons
 
or quadtree
 
@Lasse That's dumb
Do it right
 
9:47 PM
most of these are also true for google's buttons
 
@Lasse My world is too small for a quadtree :P

@Hesherr How is it done right?
 
@hasherr no, it makes perfect sense, that's when the week starts and you go back to work
 
"but only insofar as it matches all other social media icons"
what does that mean?
 
in both cases, there are ways to add the like, et. al without actually coding any of it
it means, say you make the like button really small
you can't have, right next to it, a giant reddit button
 
gotcha
 
9:48 PM
but if you search for the rules, you'll find them. i might be comflating facebook and google anyway
 
for example, if i had a facebook and twitter buttons like the one at the top of this page in my game i would be fine?
 
that is ok, yes
 
okay cool, it makes sense than
thanks guys :)
 
Pip
mhm
 
@erebel55 if you actually want to read the details, I believe this is the relevant page: developers.facebook.com/policy
 
Pip
9:49 PM
I saw your question there from 11 mins ago @erebel55
:P
 
like Icy said
read the rules to be sure
 
thanks Icy
 
if you can, just use a pre-built widget to acocmplish whatever you can
customizing is usually unecessary, and lots of work
for example, this silly page i built for byte56's game...lots of effort to make the social icons where i needed them and identical itsobviously.com/newkorbly
totally not worth it :)
 
@Lasse You wrong.
 
@Pip the Frame is a class and it updates the widgets and everything so not but you could change the code to make it so that the button can go straight onto the screen
 
9:56 PM
@SethBattin and then Ghostery just blocks the buttons entirely. :D
I love Ghostery
 
@hasherr what's that fivver thing?
 
@IcyDefiance yeah, it's too bad there isn't an oauth service that people trust without worrying about losing their lives to it
cause they're really, really convenient to use
and safer than passwords for everything
 
I just don't like Facebook knowing every site I visit
 
ha, true
the trick is to log out :)
 
log out and change your IP address after logging out
 
9:59 PM
perhaps so
 
Pip
@Serial I would rather not change the code, if I don't have to. Should I just make a Frame for each screen, then?
 
yay got my raycasting working
 
You can make multiple frames
look at the example class
 
turns out my original version had nothing wrong
 
Pip
kk
 
10:00 PM
google's no better though. and there are a few other trackers that seem to light up on freaking everything.
Ghostery and Disconnect just block them all
 
but thanks to @MickLH the new version is a bit faster
 
Gravatar is another one. I can't see 1/2 the avatars in this chat because Gravatar logs the IP address of anyone who accesses an image from their servers.
so Ghostery blocks all Gravatar images
 
Pip
interesting
 
that's kind of silly
 
Pip
can you see mine?
 
10:01 PM
yes I can
 
by definition, a server logs ip addresses
 
not quite the same
 
it's what they do
yeah...
 
Gravatar apparently keeps them around and tracks what you do on the internet. It's mentioned in their privacy policy if I remember right, but it's not like the policy is shown to you before you load a picture.
actually I'm a little surprised that Imgur doesn't do that. or at least it's not known that they do.
 
but you can read it when you start using gravatar
or does it actually log the non-users ips too?
 
10:04 PM
it does
or so the claim goes
I haven't looked too deeply into it
 
wait how do i make multiple lines show up as code in chat?
 
@Serial click on the fixed font button next to send before you hit enter
 
Pip
yep
 
nope
 
you didn't click the fixed font button before you hit enter
 
10:05 PM
class Test(Frame):
    def __init__(self, screen):
        ''' An example class to show how to creat custom GUI frames'''
        Frame.__init__(self, screen, (250, 250), (0,0))

        self.b1 = Button(self, "Button1", self.command)
        self.b2 = Button(self, "Button2", self.command2, position=(10, 100))
        self.b3 = Button(self, "Button3", self.command3, position=(10, 190))
        self.tb = TextBox(self, (140, 10))

    def command(self):
        #do something

    def command2(self):
there
@Pip that's an example of how to make a frame
 
Pip
kk
@Serial I made a branch called "pip_dev"
going to work on that a bit later, if I have time
 
is there a spoiler tag or something like that on SE post? So that I can hide some text if I don't want it to be shown without user interaction, for example when posting spoilers, or in this case I want to edit my project highlights post and leave old text hidden, to allow readers to focus more on the new text
 
Pip
I don't think so :/
feature-request mode activated
:P
 
Holy shit sin and cos are slow in C++ o_O
 
@Hjorthenify are they really?
 
10:16 PM
depends on the proc
they can be fast
 
@Lasse Very! Remember how I asked how to optimize a particle system? I rewrote my particle class to use use a vector instead of cos(angle) and sin(angle) Now my FPS only drops by 4 when rendering 200 particles...
 
I haven't noticed any slowdowns with C# when using them
but I have never used them like you described
 
using them in a particle system could do it
 
I have always had a vector based movement
 
I didn't either. I used them for unit movement since they change direction often, so the code was pretty much just copy-pasted...
Now that it uses vectors it is much more effecient!
 
10:24 PM
I think my particle system gives a start location, direction vector, "force" vector (gravity, wind, etc), and current time to the shader, then each particle is a vertex with a position and spawn time. the shader does all the rest of the work.
been a while since I looked at that project
 
sounds like it's hard to implement something dynamic there, like what happens when some force source is slapped on the scene after couple of seconds
it would change every particle's path
 
yeah it wouldn't support changing wind speeds
it did support moving emitters, with a boolean deciding whether the particles would inherit the emitter's velocity at the point they were emitted
oh and the shader got a rotate speed too, which also wasn't dynamic
 
anyway, that must have been fast :)
 
could draw 1.2m particles at 60+ fps on my Radeon HD 7870 XT
on school computers it was more like 90k at 60 fps XD
 
yeah
lol
hmm now how do I re-enable the chunk compression in memory, my current raycasting implementation needed to break that
 
Pip
10:33 PM
@Serial problem
what is pygame._view?
It throws a 'not found' error
 
    if(CS.Input.IsButtonDown("MouseScrollwheelUp")) then
        fov = fov - 1
        end

    if(CS.Input.IsButtonDown("MouseScrollwheelDown")) then
        fov = fov + 1

        end


    if(CS.Input.IsButtonDown("Mouse3")) then



        end
      fov = math.clamp(fov,44,60)

      local tempfov = lerp(self.gameObject.camera:GetFOV(),fov ,self.timer*2)
      self.gameObject.camera:SetFOV(tempfov)
 
@Serial Fiverr*
 
This is causing my fov to warp in and out p bad. not sure how to fix it. Lerp is correct... is it my clamping?
 
@Serial It's a website where you post a 'job' and then people can request your job and they pay $5
I've been facing some minor success from it lately
 
@Grey what is fov before what you pasted here?
is it defined inside that function?
 
10:40 PM
yes fov is initalized to the current fov of the camera on "awake" which is 45
what i posted is in "update"
and craft studio does not have delta time so it's creator told me to calculate delta like so since the frame runs at 1/60
 
oh okay, so if you had scrolled up, then fov would equal 44 when it gets to the clamp function?
right before the clamp function, that is
 
self.time = self.time + 1/60
@icy
actually
I think clamp should be before all the "input" handling
 
@Grey check for int division errors with that
1.0/60 != 1/60
I dunno. the fov variable is the only thing that really looks suspicious to me. that's all I got.
 
(not sure why its choppy) but
I zoom in and it basically "zooms in and out really fast" before MonoGame(which is what CS is built on top of) throws ArgumentOutOfRange exceptioon
 
oh I bet I know
the time parameter for lerp
it's supposed to be between 0 and 1
 
10:46 PM
@Pip oops just delete that line in all the files my bad
 
Pip
lol
 
oh and self.timer != self.time. check that too, just because your messages are inconsistent there.
 
Pip
what does it do @Serial?
 
@IcyDefiance it's timer :P
@IcyDefiance I am sure I tried this but no dice. I'll try again
 
It does nothing I just copy and pasted it from an old project, It was originally for making a game into an exe but it isnt needed @Pip
 
10:48 PM
It's the clamp!
I think that's the jitter problem
 
quits
 
This one should be more representative
It make no sense
such fail
 
Oo
oh wait
you're scrolling up and down a bunch of times in that gif, right?
and each time the impact gets bigger and bigger
 
No
Same direction
 
Oo
can I see the whole function?
your bug has pissed me off
 
10:52 PM
function Behavior:Update()
    self.timer = self.timer + (1.0/60)
    TargetPos = Target.transform:GetPosition()
    Pos = self.gameObject.transform:GetPosition()
    Position = Vector3.Lerp(Pos, TargetPos, 0.2)
    PadPosition()
    self.gameObject.transform:SetPosition(Position)
    self.gameObject.transform:LookAt(TargetPos)
    Rot= self.gameObject.transform:GetEulerAngles()
    self.gameObject.transform:SetEulerAngles(Vector3:New(Rot.x,0,0))


    if(CS.Input.IsButtonDown("MouseScrollwheelUp")) then
@Icy thanks for helping. I'm guessing it's something simple, because I've run into a lot of bugs like that the past 2 days
 
wait you said fov was defined in the same function
 
nonono
 
oh you didn't say that
 
yes fov is initalized to the current fov of the camera on "awake" which is 45
It's in awake
 
okay
 
10:53 PM
Which is like start but only fires each time the script is "enabled"
 
self.timer = self.timer + (1.0/60)
constant delta huh
 
That's the problem?
 
it's not the issue here though
no
 
I dunno. I don't see anything.
 
but it will be if it is run long enough, the accuracy of the floating point number will decrease as it gets bigger
 
10:57 PM
^ I think
That's the problm
because it will work a few moments and then it gets terrible
 
that's not gonna happen in a matter of 3 seconds
 
local tempfov = lerp(self.gameObject.camera:GetFOV(),fov ,self.timer * 0.3)
and here you just give the timer to it
which means it's gonna be larger than 1
 
:O
 
that might have weird results
 
lerp should just clamp the timer to 0-1
at least if the library was programmed by someone with more than 3 braincells
 
10:59 PM
should it?
 

« first day (1361 days earlier)      last day (3675 days later) »