• Advertisement


  • Content count

  • Joined

  • Last visited

Community Reputation

1199 Excellent

About d000hg

  • Rank

Personal Information

  • Interests
  1. Contract Work

    Interesting, thanks. Maybe I'll move, though Seattle might be just like England in climate.
  2. Contract Work

    Still hard to believe considering that here in the UK, where things are not that disparate to the USA, £100k is still considered a very good salary (130-170k US depending on exchange rates) and has extremely high property prices and living costs. London which is the financial capital of the world, and even in banks developers are not on 6 figures until they're pretty senior. Are you really sure that's what any decent developer in the area will earn, not just the Google bubble of big names and trendy startups?
  3. Contract Work

    There is a big difference between a coder and an engineer. People on $200k+ are not just writing code, they are presumably designing architecture and all the stuff which goes with it, for regular developers ($50k) to churn out. They have a lot of experience, often domain specific. $200k is still a REALLY BIG salary in objective terms, even in the US, let's not forget that. You should be something special to justify it, unless some internet bubble is throwing cash (like in the late 90s).That said I just checked and the average US salary is not tiny, at $44k. I'd still love to know where I get get some of that Seattle lucre, from the UK I'm a pretty great developer (IMO) with experience in medical simulation - I must be worth a fortune! All the people serving you your soy-frappa-chappa-chino or McKaleMuffin on the way to work, or driving the bus you take TO work, are on substantially under $100k. It's very easy (speaking from experience) to get in a bubble with these things.
  4. Contract Work

    Setting yourself up as a business not a contractor is where the big bucks surely are, though if people don't flinch at those rates go for it... makes me wonder why bother with your own project Also as a very experienced C++ developer with gaming/performance background, if you'd like to tell me where to find people offering $150/hr that's be swell
  5. Contract Work

    I mean if you could get $300/hr or even $150/hr I doubt you'd be so interested in your own projects. Those are crazy figures, I have never seen a contract developer charging higher than $120-150/hr and that was for very niche stuff with a lot of domain knowledge outside of the software side (medical, physics, etc). In the UK, even contractors working as quants (very specialised financial maths) might top out at £100/hr though they'd be in the office and billing £700/day. Which is about $140/hr right now. They have years of experience in that specific field. Now if you hire in a big consultancy you might be paying $1500/day for a resource they pay about $300/day but that's a whole other rip-off market. Better to bill project-based not hourly if you want that. Perhaps you're in Silicon Valley and people pay stupid money but here in the UK the contract market pays about 2X what you'd get for a salary. The people here billing $150/hr are not people who would be on $50k salaries like regular developers.
  6. Now I know this is dependent on the PC to a big extent but I've been out of the loop with modern hardware for a few years. I have a project where a large 3D texture might solve things, we're talking maybe 512^3 but probably 8-bit, single channel. Memory wise this is not a big deal (it's not a game project and there are not lots of models or textures in use) but I really don't know if it would be supported on a typical PC (not a games rig). Or if it would slow things to a crawl... or once it's in the GPU memory it would not be unduly performance-limiting?
  7. A recent change - since the relaunch so the last 1-2 weeks I think - means every page-load, the full text-block of the "Download the Game Design and Indie Game Marketing Freebook" announcement is briefly displayed at the top of the page... a good several inches of text. For about half a second, then it hides all but the top 2 lines. It's the kind of ugly glitch that really hurts the eye, but is hard to get a screnshot of! Using MacOS, Chrome.
  8. It would still be polite to explain this rather than be greeted with some corporate-looking beige "you must give us this data". Or be allowed to login but told you won't be allowed to use certain services. It seems rather crudely implemented that members of a decade or longer are forced to provide this to continue using the site without any explanation - you cannot login to ask about it for instance! If someone doesn't want to provide personal information is their 16 years of membership not valuable, they just have to leave?
  9. What they said... not only was I forced to provide more information, I was given no information at all about why this is. No "we now require your location" just a form with aggressive red asterisks
  10. Facebook spam

    I suppose if you have someone updating their blog (journal) every day then it's naturally going to get picked up by your automated system since presumably you don't have many blog posts every day. I did wonder about whether it's permitted to use your blog as a pure advertising platform as at least one company is doing, maybe limiting each blog to only getting 'syndicated' once a week at most? I have noticed some improvement although Facebook is a bit of a law unto itself... what it chooses to show me might not match what you're posting 1:1 in terms of which posts, when I see them, etc.
  11. Thanks guys, that's most helpful. I'm already getting in too deep to the "make it perfect" trap rather than "the server decides, everyone does what the server says". A messy, imprecise system is clearly just fine - then you end up trying to make it look less messy ore on the client side rather than trying to make the underlying simulation perfect?
  12. (and yes let's assume this is a client-server not P2P world now as that seems obviously the right direction)
  13. Great post, thanks! Is it normal/desirable that every client and server works in terms of frame number i.e. a fixed time-step, regardless of rendering? So a client says "at frame 1234 X happened"? The last multiplayer game I worked on had this, and of course the issue is the server receives updates from clients not always in sync. You don't want to lock-step everything (I think) as one person's slow connection lags everyone. But the server is potentially getting frame 1236 from client B before it has got 1234 from A. What happened here was that the server did two things in parallel (as I remember it): Apply the updates in the order they are received Apply them in the order of their frames And then check if the states match, and retrace its steps to the frame things diverged. This is what I'm calling rollback and I hadn't seen it before. So the server would have a state at frame 1236 which was malleable and another at 1234 which was locked in. In the past I've heard advice that clients and server shouldn't try to be locked in sync but each should spit a constant stream of updates so things out of sync quickly get corrected. But you surely still need a way for the server to have a 100% accurate world-state... so for a fast-paced, relatively simple game is there an obvious design pattern to use? Maybe there's something I can read up on or a book you can recommend?
  14. Oh of course a client can't be trusted but non-tampered clients would reject the input from the dodgy one was my point... the results wouldn't tally. In this case every client effectively is a server+client. But I was more talking about the roll-back approach to defend against mistakes rather than deliberate cheating. @Kylotan makes the valid point that scale requires a central server, even if all it does is post updates between all clients and do very minimal checks. However even here wouldn't clients typically have dual gamestates - the most recent server state and the current client state - to have smoother gameplay where we only roll-back if the server state mis-matches the client state. i.e. the client predicts what is going to happen, asa way to reduce laggy artifacts?
  15. In a simple, casual online game like Slither/Agar, would more experienced network/multiplayer developers say I need a proper game server, which maintains an entire world state and prevents clients from doing things they shouldn't? I need to prevent different clients from diverging wildly but can I do that client-side only using rollbacks and so on? I don't know many technical terms for different multiplayer methodologies / design patterns so if there are standard names you can suggest I google that'd be helpful, as well as your own suggestion of how to design something like this? Multiplayer seems an area I could get sucked into ever more complex designs if I'm not careful. Let's say I need to support 100 clients - not thousands, but not 10 either.
  • Advertisement