I mean, we're done here I can't put up with your shit for even 2 more seconds, but I hope you will try harder to open your mind in the future when someone wants to help solve your problem.
This problem is EXTREMELY straightforward, the ONLY issue here is your failure to communicate the necessary details I've asked for directly several times.
The algorithm is a very "1 + 1" math problem, but it's "1 + x" and you won't tell me "x"
@KevinvanderVelden lol the real question is who should ignore who
I guess everyone could ignore everyone and then we can all have private conversations and never have to risk someone having an opposing view about anything!
I just thought it was funny, considering the extreme limit of using ignore to the maximum :P
It would be like multiplayer notepad with radar off
@KevinvanderVelden I kinda noticed this... My whole attitude shifted the moment I encountered that repulsion to actually doing analytic thought and problem solving.
I was actually trying to set out to be friendly, I remember seeing his name on GDSE this morning and felt like I should reach out
Also to try and help fix my own racism because I've become severely racist after some clients that insisted on outsourcing tasks I defined for their project... to.. odesk
.....backfired
I'm seriously scouring for any evidence that I should not be racist.. and going out of my way to ignore the vast amounts of evidence the support it... and I'm really struggling
My strongest silver bullet against racism is only "All people are unique."
I seriously don't have a good real world example. It makes it a lot easier to see why so many people around me are racist, most of my neighbors are not as abstract and analytic as I am about things. They prefer real world examples
But I can reject at least a few million more bad examples, before statistical significance at least, so I'm safe for now
Expected value is looking pretty fucking bad though...
user92578
4:46 PM
I'm starting driving school tomorrow
user92578
Their awesome dynamic lesson managing website is awful
I used to be a lot like that and still fight it off when I notice myself doing it. I always try to understand the code as best as I can so that I actually learn from it. I mean sure you can grab the code from SE/SO but really if you don't understand it you've learned nothing.
So I just finished working on a weapon swap script. However I don't want it swapping in the middle of an action (as the weapon swap is tied to the mouse wheel as are a few other critical controls). So I figure that I'm going to have a bool on each weapon script and have the weapon script check to make sure it is false before it swaps. Is that the best way to do this?
There is quite the library of appreciated games made using MIT's Scratch program. The program uses stackable blocks and pieces instead of raw code.
I'm wondering whether discussion or asking for debugging help about development of games using Scratch would be on-topic here.
I don't mind fixing bugs in my code, I shouldn't have put them there, but crappy issues that should be trivial / not there at all is just cringe worthy
@MickLH yeh that's the problem, and I've tried so desperately to avoid it, but doing so has cost me more time than just writing a game engine lol
Lol idk what to say, I tried to hack my required features onto a few different engines and found that my use is too edge-casey and nothing I want is supported
well the engine i'm using atm is in beta, but the issue i currently have is that it doesn't have a networking layer and insists that my game use only .net portable assemblies
oh, shit, i just figured it out
I'll put IoC in the main project and inject a standard socket client in the windows build and worry about the others later
I actually finished the whole pile of refactor and bugfix crap... I've been working on that for so long, I have to sit down and think hard to even pick what direction to push for now.
it'll break the engine rules a bit, and won't be cross platform, but if I want to implement the client on other platofrms I can just bolt in a different interface implementation for the network client later and have the IoC stuff return one of those instead
@MickLH well i finally got some core meshing code finished and networking sorted
also have a working world server
and i've got to the point where I am streaming my world data to the client pretty fast
you going for cloud / MMO type stuff or just basic?
I managed to write a simple socket wrapper that does message parsing, so I can stream the raw bytes and it raises events on messages being "completely received"
I guess technically it's MMO style networking, I mean I have to solve all the MMO problems because of the edge cases, even though most of the time very few players are in the same area together
Ironically the player should deal with mostly NPCs, and the NPCs present the greatest load on the system
But so far no roadblocks
I've been doing a "security first" implementation, so I'm still working out the handshake to be DDoS-proofed
The first pass defense is a proof-of-work system, where each client has to brute force search for a random integer that makes the packet checksum contain some specific bytes
Then if the checksum is missing the magic bytes, packet rejected. and of course if the checksum is wrong, packet rejected. This should let me control the rate that it's possible for connecting to start at, so if the server is overloaded I just require more proof-of-work in the handshake.
Ideally I'd like to figure out a way to let anonymous users join a game reliably even during an attempted DDoS
@Darth_Wardy My handshake process is pretty CPU heavy for the server, a client could crash the server just by starting handshakes as fast as possible. I can't rely on any external firewall because that might block legitimate users
detecting ddos attacks is not something I intend to ever do, my thinking was that I would ultimately just deploy to a cloud and have the cloud figure it out
I could go with a load balancer, and move handshake & authentication to its own server cluster, I just wanted to avoid the complexity of external authentication
It's only generating the key the first time that's expensive, both sides have to generate the same key without ever sharing enough information for anyone else to know the key
the routing engine in the event of a login call might call a webservice or something, not sure yet exactly how I want it to work so I mocked a simple "list based implementation of the login handler"
Yeah I ask client to route between themselves, and the servers only pass messages when the clients can't figure it out, or the game rules require the message to be processed by a neutral party
Playing with friends on LAN is a pretty important element of my game, so even in online play I take advantage of the faster P2P link instead of making a round trip
I did wonder about using p2p based udp packet routing and saving the server round trips but not sure, since all moves in my model come from the server there can't really be much cheating but it adds a lot of server load
I have a system where Entities have an "owner" node, and once the server gives ownership to another node, it tries to forget about the object as much as possible
The per-message signatures work out gracefully as a more functional replacement for per-message checksum.
Take the debris example: The only client who cares about the debris owns it, the server can avoid any processing whatsoever, doesn't even need to load the models. If another client enters the area, they already know about the players in the area, and can request the debris info from the player who owns it. If the owner left the area then, they can pass ownership back to the nearest client. If no client is in range they can pass it back to the server, and send the server a state snapshot for it.
Without the signature, every client who saw the debris would need to ping the server to confirm the owner. In that case the server might as well own the pile since it has to lookup data for it and respond to packets constantly anyways.
specific-question has no description and ironically isn't very specific. The 6 questions using the tag don't have any similarities.
Also, if your question isn't specific, then it is off-topic or too broad. Does this make all the other questions on Meta Game Dev SE too broad? Any good post should...
I started trying to build a complex rule system then I eventually settled with basic event handling
I essentially only have a set number of operations that can take place, so I have a means to add a list of handlers for an operation to a concurrent dictionary
but i do have an interesting situation where the message in question needsto be passed between connection servers
I don't really want to be doing cross server "who's nearby" type queries so I rely on the server in question to know and pass on relevant information
so I added a means to say "I handle events in this area for this type of thing"
that then meant I could for example have multiple world nodes, and then have multiple connection servers hooked up to them
then have each world node tell each connection server that it was interested in all world events within an area
that allows me to break the the workload down quite heavily
but it gets really interesting when world nodes need to talk because somethings happening on a world node boundary, and there are players from various connection servers interested in that event
I can even define portions of my virtual world that don't connect nor ever have to connect in any physical way, I just have arbitrary lumps of 3d space
You don't need the whole grid, only the cells you use. Actually the asteroids seem like a perfect fit lol I'm using 1km^3 cells
I can scare you about my decision making: I made the physics engine represented by an entity :P
The simulation's origin is wherever the entity is, and all of its children become physics objects, wherever they are
Any time an object collides with something that's not physics animated, it pulls it into the simulation. When any islands fall asleep, they are removed from the simulation.
If one physics simulation is running too slow, it's supposed to split into two physics engine entities so they can run on separate processors, but my method for checking "too slow" is just seeing if the object count is too high, which is not really a good way to estimate physics load at all
I have a friend working on 3D stuff, so I had to do a lot of the fun stuff first so he could play around with it. It was a very successful morale exercise.