« first day (3386 days earlier)      last day (1624 days later) » 

1:33 AM
Why would anyone show up at work with a non pretty bone saw?
 
2:10 AM
Maybe there's an ugly bone saw day contest at the office. Like ugly sweater day, but for a more disturbed demographic.
 
Haha! Who knows!
 
Nurse pictured above maybe knows. I volunteer someone else to ask.
 
2:57 AM
Yeah, what's her story?
 
3:10 AM
Maybe she's a hacker. Prepare to have your services denied.
 
3:29 AM
Maybe the services she offers are really expensive. Gonna cost me an arm and a leg.
 
 
8 hours later…
11:01 AM
hello
 
hello
 
how's it going
 
I'm slowly refactoring my game's core
doing boring things at work
and that slowness of refactoring makes me sad
And how are you?
 
Awww
I've been ill the past week, so I spend so many days home, I got bored :/
I need to start refactoring on my project too, so I share the pain
I like refactoring in general, but one day you reach the point where you can't tell if refactoring will make it worse or not
 
There was two parts that need rewriting
one is old, the other is temporary
i'm refactoring the old one
objects were stored in a big list, and the problem is when I tried to add fires - they can damage other objects which leads to O(n^2) operation every frame
actually, it's O(n*m) where m is the amount of fire but it's the half of n, the other half is smoke
Now I'm trying to split the core into systems such as DamageSystem, BlastSystem, FireSystem etc
 
11:15 AM
Can the fire hurt everything in that list? then it's not that bad performance-wise
 
fire can hurt only a small number of objects
 
Although if you are worried about performance, you can divine the map into imaginary "tiles", so if there's fire it would only check against other objects in the same tile (which are close to the fire) and not distant objects
 
This is how my collision engine works and I'll do the same with fire and damageables
Sometimes I need to distract myself because I'm tired doing the same thing over and over again
But every time I begin making something I realize that it isn't simple
For example, a platformer. Sounds quite simple, right? But I want a platformer with a complex move system, where jumping from crouching position is higher, chouching from sprinting activates rolling, where attacks when you're not holding arrows and when holding them are all different and depend on what you're holding and are you jumping, and when crouching rapidly counts as a taunt. So it will either delay my main project or give no satisfaction.
 
11:31 AM
Honestly I wouldn't say a platformer is simple. Sure you can have a "stage" with 2-3 rectangular platforms and make actors walk on them, but once you start making that more automated, or add curves, or make it scrolling (like super mario) then it becomes more and more complex
 
yes
without complex mechanics it's simple, but too generic (Captain Obvious to the rescue)
 
But I do share the feeling of getting bored doing the same thing over and over, this is why I prefer to make smaller-scale games, but make more of them, at least until I found the one type of game I enjoy making
 
I also have a feeling that I like writing game engines more than actual games
 
I have the same thing, which is why I keep working on weird stuff yet I haven't published a game in 2-3 years :P
 
I haven't published it in 5 years :_P
 
11:43 AM
Ah, i'm not the only one then :P
I have a friend that is the opposite, and enjoys making games but not doing low level stuff, and we were thinking of doing something together
 
You certainly should
I worked with one of my friends on a bullet hell project once
I wrote layered rendering, collisions, utilities, and he used it all. But he abandoned this project.
 
Aww that's a shame :/
 
He had no time to work on it in addition to being lazy
 
awww, maybe its for the best, now you have time to work on the worms game
Out of curiosity, do you have any design experience?
 
which design?
I remember a funny thing: sound library's documentation said that the volume should be passed in percents so I passed 100, didn't check and git pushed. You guess what happened next
 
11:59 AM
in general, something like graphics design, or UX or something in-between
Music blasted to all users affected? :P
 
I have no special training here, but at least I can distinguish good and bad UX
@TomTsagk every single one (he was the only user other than me)
I have to add that it was a sound that plays when you are hit by a bullet
 
Lately I've started doing research on how people view a design. In the past I've always been a person that loves simplicity, and I'd much rather have a simple UI that users can immediately understand
However I've found other UI choices that are a little more "complex" (graphics-wise) and it makes it hard for the user to understand how all of it works behind the scenes, but it kinda looks better
To be clear, when I say complex or simple, I mean visual-wise, not functionality-wise
 
the good UI/UX is the one you don't notice, it looks natural
in a game, it should also match its style
 
I mean it sounds simple when you put it that way, but actually working on a design it a lot different :P
 
my UI is simple - pale blue means not interactable, yellow means interactable
 
12:08 PM
In the past I've always loved to have simple single-coloured rectangles for design, and for the most part they look simple and good.
But I'm not sure if a design that is more complex with gradients or textures would look better
@trollingchar This is actually a very good way to make UI
 
there also are no checkboxes - all options have name to the left and value to the right, in this case it's "Yes/No"
so I don't have to worry which direction is 1 and which is 0
no radiogroups - there are buttons that loop through all possible choices, if there are not many. It saves screen space
 
Have you ever tried making UI with no text? It's quite the interesting challenge
 
But there will be scrollable dropdowns
@TomTsagk you mean, using icons only?
 
Yeah, or just find a way to communicate how the game works without any text at all
 
hmm
does ? symbol counts as text?
 
12:17 PM
It does (think about cultures that "?" doesn't mean anything)
 
how do I encode "help" then...
 
I made a game once for android, and I tried not to use any text at all, to make the game "international"
it doesn't have the best UI, but it kinda works :P
It could be something like an open book maybe?
This is why I find this a fun challenge :P
 
yes it is
in UX there is an important thing that some buttons are dangerous
and users accidentally press them
 
12:33 PM
Oh yeah, that can get extra tricky
 
You know, some users are trained to ignore warnings
 
Not surprised, because of ads, I'm trained to ignore everything that pops on my face
 
I have two main ideas about this
the first one is to make a "danger zone", a red button that does nothing by itself but opens a menu with dangerous actions
 
This is actually done on some websites currently
I think github does the same
 
the second one is to make a regular button, but red and with some kind of protection, like requiring long click or right click
 
12:38 PM
Is this for a video game? I would think most video games don't really need a danger zone (the only dangerous thing is deleting save files)
 
overwriting anything can be dangerous
 
If you make a button only trigger with a long click, it has to have an animation that suggests you have to click the button for longer, which might bring more problems on touch screens
I'm not sure I like the idea of buttons requiring right click to work
 
normally you click with left button
so if you accidentally left-clicked the wrong button nothing will happen
 
But if I left clicked a button and it didnt do anything at all, my first impression would be "it's broken, let's not bother with it"
 
but I think the best solution is to avoid danger altogether, for example, storing some previous save files anyway
 
12:43 PM
To be fair, it depends who your audience is
I like to give users ultimate control over a game, but that might not work on a younger audience
 
 
2 hours later…
2:33 PM
Has anyone tried www.indiedb.com before?
 
Nope. And for as long as I've been here, I don't recall anyone mentioning they've been using that.
 
That why I was curious, I've never seen it being mentioned before
I used to use that when I was a student, but it seems its not popular at all
 
2:48 PM
Being an indie and making a living out of it must be really hard :/
 
I mean, making a game that is worth selling requires a lot of time experimenting and learning and is already difficult enough.
Having nobody to finance you makes it even more difficult
 
Yeah; some companies spend 50% of their budget on selling the game. If you earn 0 money by making it, imagine how much money you'll spend on selling it :/
Reminds me of this talk the GDC.
 
I didn't even think of that, marketing is quite important to get a game out
I have some friends working on a big project, and from what I understand they all have full-time jobs, and work on that project on their free time
I think that's the safest way to make your own thing
 
Yes, it works well when you don't have kids and/or your partner is fine with it :P
 
Haven't thought of that :P
That's just more layers of obstacles
 
3:01 PM
I had a friend who had a full time job and still managed to play WoW 6-7 hours a day. It changed when he got engaged :P
 
Oh yeah.
 
Are you trying to make your own thing @Vaillancourt?
 
@Pikalek Sweet!
 
I like the tagging system of the GDC vault, but in the past, I found their video controls to be lacking.
 
3:02 PM
@TomTsagk No, not yet. I don't think I'll do anything more than a hobby project, someday ;) I have too much other stuff in my way for now.
@Pikalek Need something more than pause, play and volume control?
 
Yes. Looks like they added playback speed controls since then though, so maybe I need to give them another chance.
That's really my issue with video - it's hard to skim.
When I read, I can often pull the key info out much much faster than from video.
 
If you had infinite money, what would you like to make most? A video game ? Or something else?
 
@TomTsagk That is a great question.
I would be torn on it myself.
 
@TomTsagk Hey, that's a tough question. My first thought is "pay my mortgage", but I don't think that's the kind of answer you expect :P
 
But I would probably go for the "something" else.
 
3:06 PM
I think it would be more of a simulator with idle interaction.
 
@Vaillancourt I had assumed that it was budget purely for creative work.
 
@Vaillancourt at least you have a mortgage :P
@Pikalek what would that "something" be?
 
Then you use it as a screen saver and see your simulated entity evolve with the parameters you've set.
 
Oh wow, that sounds quite interesting
 
I'm working on a texture generation project. It's sort of like a cousin to Worley noise.
 
3:08 PM
so it all looks the same to everyone, but as time goes by it changes
@Pikalek Is this for a specific "pattern" or just in general?
 
If I had budget, I would have hired out some of the exploratory math work and as it gets closer to release, I'd hire out making a UX for it.
@TomTsagk It's tough to describe succinctly - like the traditional Worely noise, the core ideas aren't complex, but the combine together in a combinatoric way & can produce a wide variety of output.
 
@TomTsagk The idea would be to make it 'online' so your simulated entity evolves w.r.t the others and has an effect on the simulated ecosystem.
 
@Pikalek Sounds quite interesting, and what would you do with the project once you finished it? Make textures for renders or a game?
 
Both. I think it would be a useful addition to proc gen dev, but I've also been asked for canvas prints for art purposes.
@TomTsagk Here's the overview pdf for it that I took to M+DEV last year. It's now out of date & the images aren't full resolution, but it's enough to get the flavor of it
Personally I find some of them more interesting than others, but the idea was to show the breadth of output.
The down side is I trace a rendering artifact back to the core math for rendering - I had made a simplifying assumption was wrong. No big ideas have changed, but the way I was calculating the shading is currently under re-write.
 
3:26 PM
That's looking good :)
Might want to create an app that will auto generate textures and use them as background images for Mobile phones!
 
@Vaillancourt Thanks! Yes, I agree. I already have a wallpaper for it on my phone ;)
 
Cool!
 
Here's the current problem:
In the pink box is an area that isn't shaded as intended. There's a subtle discontinuity, but it get's worse than that fast.
The white dot is a place that's equidistant from two neighboring regions & that causes the problem.
Technically it should only 'see' one of them, but lead dev made a mistake in some math so here we are.
 
So you'll fix it?
 
That's the plan.
I'd also like to fix the 'hole punch problem' which can also be found in that image in a couple spots, but I'm less sure about that one. Depends on math that hasn't been worked out yet, so hard to say if it's fixable or not.
The Hole punch issue doesn't break things nearly as much as the shading problem though, especially when you start layering octaves of images with high degrees of cell mergers.
So it's a lower priority.
I'd be nice if I could also make it fast, but that's also a far lower priority.
 
3:44 PM
Yeah make it work first, then make it better.
 
Yup.
 
I'm happy to not do much math stuff with my work.
 
I almost double majored in math, so I ate a lot of it on my way through the system.
I like math, but as a mentor once told me "you don't think like a mathematician... I'm not sure yet if that's an asset or a liability..."
I think the answer to that has proven to be, "yes".
 
@Pikalek Yes to what? Asset or liability?
 
Yeah :) It's both.
 
3:50 PM
Aah, hehe cool :P
Best of both worlds ;)
Or worse :/
 
"It's a particle, it's a wave."
 
4:13 PM
I'm not sure I get that one though :P
 
4:38 PM
:D
 
5:11 PM
Nurses don't really dress in white anymore, though.
@Almo
(I guess she fixed the issue :P)
 
 
1 hour later…
6:16 PM
hahaha that outfit is from a long time ago
I mean in the lore, historically speaking
Here's a Victorian one
 
Why do they need a saw?
 
7:14 PM
Basic attack is a slash
specifically, nurses might have access to a bone saw for amputations
 
7:59 PM
Should the server only send messages to clients that are 'near' the "transmitting client"?
 
@Paul Yes, the less you send, the better you are: less traffic means lower cost, and it reduces the information cheater can use.
 
But the server needs to calculate the distance to each other client upon receival of a message? It sounds like a lot of overhead; though it may be peanuts in "cpu time" anyways.
 
(also, smaller packets means less data lost in the Internet)
Will the bottleneck be your server calculation or the packets you send to clients?
Also, IMHO, just the fact that clients don't receive data they don't need helps reduce cheating is a valid point to not send too much data.
 
I'm really stuck with choosing if I want the logic on the server or on the client. I want a high-performance shooter game.

Server logic would mean additional round-trip-time and increased 'difficulty' in programming and server load; adding interpolation on the client as well.
 
Ok, but if you let your client do the logic, your players will cheat from Day 1.
 
8:07 PM
True.
Is it the only reason to not do it though?
I'm thinking this game would mainly be played locally with 'trusted' friends though.
Though I agree; it's not really worth your programming time if it's easy to cheat, if you'd ever want to "release it", you'd have to rewrite completely.
 
Consistency of the simulation too. Server and Client will never achieve the exact same simulation.
Yep, never trust the client :)
You'll have to decide who's authoritative here.
Sure, an option would be to make a version of the game, just to get the hang of it. Then remake it with more security, from scratch :)
If you're trying to define a good gameplay, sure security is not a concern, if it's a prototype, release as early as you can!
 
I think I'll just see the client as the "view" and the server as the "logic".
This doesn't particularily increase the complexity (though some added interpolation).

Since it's mostly LAN; it may not need interpolation for now. The server will be more performant as a browser anyways; so I should indeed do most logic there.

It's just that for example a "reload timer" would have to be programmed on both the server and the client and synced. Instead of being all (easy) client-sided. (Which indeed opens no-reload hacks) but a lot of games are susceptible for "no-reload hacks"; so I'm not sure w
 
Good thinking :)
Sometime games have the exact same logic on the client and on the server, with the client having the "integrate corrections pushed by the server".
So you end up with a duplicated code base :P
 
I also think I'm bothered too much by these optimisation things. I've rewritten my code twice already. Once using Socket.IO, once using JSON over standard-websockets and once comma-separated over websockets.

I couldn't really find a good source on the "proper" way to do it. I've done the basics of a shooter in gamemaker using 39dll (addon for TCP messages) where both server and client would know the size of a variable and use every single byte for data, but yeah.

Same goes for creating and syncing a "map" and making it traversible while still doing collisions. And for example; if bullets
 
Yeah, that's a lot o work ;)
Yeah, there's the concept of client prediction; that's kind of hard to achieve right, apparently.
Haven't done any of this yet, though :/ I don't have time.
 
8:25 PM
I'm just thinking of how many time I would have if I wouldn't like gaming.
Usually if I have a spare few hours; I'd be gaming anyways.

I might want to read some more sources. I find it a lot easier to program Arduino as PC's / Games as it's single-core and no "asynchronous" stuff.
But could be since I just have more experience with it.
 
The scope is also not the same, I guess ;)
@Paul Did you read this article?
 
@Vaillancourt that looks like a very good read
 
1
Q: Representation of trains on a simplified rail grid

Tomáš BlatnýI'm working on a hobby game, basically about train dispatcher's job. (stack: Typescript, phaser.js) My map is based on a grid, each tile can hold 1 rail tile (well, except junctions, but we can simplify it for now, since junctions are just multiple tiles, from which only one is active). Exampl...

 
I just dislike those "let's make a multiplayer game" video's where the first part is to install socket.io

While socket.io may be usefull; I think it adds a lot of overhead to all network messages. Also; the client will have to load "socket.io" library and you'll have to keep the socket.io library updated and whatnot.
While websockets are already natively in your browser, but kay
 
This one is promising, but really, it's taking time before releases...
Hey, but using websockets means you don't have to reimplement TCP over UDP :P
 
8:36 PM
But it's nice to read a source from, "source" (Valve), that would be a valid source; not just "le random" guy that made a game.
I'm unsure if TCP would have added value for sending "player movement" messages anyways, worst case it would make it worse, by resending old values?
Or does it also have some kind of queue thing to make them be received in order? But then; it does also add delay xD
 
TCP adds delay because the protocol ensures that the packets are received in order they are sent.
But, from what I read, the network switches that process the packets will have a tendency to drop UPD packets more, because they're of less importance.
 
They wouldn't be retransmitted, but I don't see why a switch would drop packets 'for fun'. Maybe unless if the switch is flooded/overloaded?
 
Yes, something like that
 
But regarding player movement; if one delayed packet is delaying all packets (since they wait for them all to come in line), it's not really helping?

Worst case you could timestamp the player movement packets and only use the last one (and if an earlier one comes in; disregard it)?
In theory that would give smoothest motion?

I believe voice-communication is often UDP; basically because of that
 
Yes. Typically, games use UDP, but they still have to add a layer of validation, just like the example you give.
Websocket uses TCP, and Socket.IO uses Websocket. So if you use any of those, you use TCP and can architect your game around that :)
 
8:49 PM
I still remember "San Andreas Multiplayer" which was a 'fan-made' multiplayer mod for GTA:SA. They didn't have lagg compensation. And servers would often be in the US with 200ms ping.
You would have to shoot in front of the enemies; to account for the lagg, pretty much as with skeet-shooting.

It basically became a game mechanic, which required quite some skill xD
 
I'll have to leave now :) BBL or tomorrow.
@Paul Yep, like in Quake3 with the Rail Gun :)
 
Anyway; thanks for the advice and interesting read.
I'll just look up some more sources and do some thinking/'designing' and AFTER that start programming the game; exactly as I want it to be.
Instead of starting over every time and getting stuck on things.
 

« first day (3386 days earlier)      last day (1624 days later) »