• Advertisement
  • Popular Tags

  • Popular Now

  • Advertisement
  • Similar Content

    • By CocoaColetto
      Can I get in trouble for naming my game similar to one that's not in the same genre? For instance, if a game is named Playarada and I name my game Playarade, can I get in trouble? Be mindful that the games would be in two completely different genres. Thank you!
    • By x3ph3r
      A sticky dilemma.
      I'm part of a team based in USA that produces a virtual world software for remote business purposes. The businesses that use us are our Clients with users from all over the world (and expanding), but primarily in the USA. Our software makes use of customizable human avatars to use in world for each user. We have gotten requests from one of our biggest paying Clients and approval from boss to include religion based avatar clothing options (yamulkes, headscarves, skullcaps and turban head coverings currently, potentially garments too).
      As our software is used for business, most people want to keep their real world likeness, which may include some of this clothing because it is a part of their identity. Since this is such a sensitive topic on all sides involved and we are in a politically charged climate in the USA, clearly we don't want to offend anyone because they all pay us. In my opinion, even if this request was deemed as a reason for loss on Client's part, it will still be our company providing the service that will be affected primarily. As an emerging company we can't afford to lose users or current/potential Clients over something unrelated to the core mechanics or hardware requirements of the game.

      How do we put it in the avatar creation menu? Keep it with the other head coverings (so not to upset/offend the religious wear users via segregation) or separate it (to protect from accidental abuse of said garments from ignorant users and offend everybody)? As difficult as it would be for us to do (right now), do we only allow access to certain users? Would that be going too far to request information such as this from users, or for them to have to volunteer it for access?

      How do we talk about it with the client? When the concern was brought up, they warned us to be careful about using the term "religious wear", so we switched to the more broad "cultural wear", in which they again implied even that term might offend in discussion (because Texas users (very many) would get mad about their cowboy hats not being treated as culturally significant...) and client tactfully avoided telling us what they want us to call it themselves. How do we have a productive conversation though they put out a controversial request and are not willing to speak confidently on it's behalf?
       
    • By DreamHack Activities
      3 Reasons Indies Should Apply for DreamHack's New Activities
      Coming to Austin June 1-3
       
      We're expanding our DreamHack events to encompass a "Gaming Lifestyle" approach. So basically we're bringing a ton of new content to the already massive show that focuses on Indies, Tabletop, Films, Students, Art, and more. Of course this means we're making everything we're already doing even bigger and more awesome such as Esports, LAN, Music, Expo, and pretty much everything else.
      The Top 3 Activities Indies Should Apply For...
      1. Indie Playground: The Indie Playground is a curated area where games entered into our competition before the event have a chance to win a complimentary booth to showcase their game. The selected games are organized into 12 genre categories that are reflected in the layout of the Indie Playground. Multiple titles are selected for each genre ensuring attendees will enjoy as many indie titles as possible. It's free to enter and those selected will score a FREE 10'x10' booth. We're pretty flexible on what you can send us. If you're not finished with your game yet you can definitely still submit. We've judged and accepted tons of unfinished video games, tabletop, etc. before.
      Entry form....https://tinyurl.com/DH-IndiePlayground
      Deadline: April 20, 2018
       
      2. Game Pitch Championship: The Game Pitch Championship was created to help build the skills you need to successfully get your product out there. Many developers are talented and either nail the build they have to show but don’t really nail the business plan or they nail the business plan and not the build. With a pitch, you have a short time to impress so you need to nail it all. This competition will not only help hone your skills with industry vets guiding your progress through the competition, but you’ll win accolades too. You could also win $2,500!
      Entry Form....https://tinyurl.com/DH-GamePitchChamp
      Prize: $2,500 USD
      Deadline: April 20, 2018
       
      3. Art Gallery: Exactly as it sounds, our gallery showcases some of the most amazing artists in video games, tabletop, comics, anime, and more. DreamHack staff select a number of works then we just print cool art on canvas for FREE—your game gets a slice of advertising while our fans enjoy a non-TV wall on the expo floor. It doesn't even require you to be onsite for the event, so this one should be a no-brainer.
      Entry Form....https://tinyurl.com/DH-GameArtGallery
      Deadline: April 20, 2018
       
      Good luck!! Reach out to sydney.mantrom@dreamhack.com for questions.
       

    • By Squid Networks

       
      Important links

      Website | Whitepaper | Onepager Facebook | Twitter | Telegram | LinkedIn
      SQUID token - SQWD

       
      Opportunity for early supporters
      We are now at stage where we are able to start making connections with game developers who would be interested in being a part of Squid Networks in the future, not only would you be guaranteed a place on the Squid Platform but other incentives such as SQWD tokens and have a say in how the platform work, as after all game developers are extremely important in the market.
      If you are interested in be apart of Squid Networks please don't hesitate to get in touch respond on this thread or email us:
      business@squidnetworks.io
      Learn more about what we've done so far


      Key developments
      Whitepaper version 1.0 is live - 05/04/18
      Video explainer is live - 10/04/18
    • By Alex Snyder
      My university class this term is prompting me to ask a few questions, and hopefully you guys could help me out. I'm supposed to crowdsource ideas and techniques on how to "sell" my prototype asset. For context, my prototype is a procedural weapon generator similar to the one used by the Borderlands series.
  • Advertisement
  • Advertisement
Sign in to follow this  

Environmental changes for dead players before disconnecting

Recommended Posts

I want the dead players to be able to watch environmental changes for a few seconds (or a fix amount of time) before they are cut off from the server. How can I achieve this?

I am thinking of using a timestamp. So when the player is dead I record the time for that player and a few seconds later I loop through the player list and disconnect the players that have been dead for certain amount of time. The problem is I loop through the player list at a fix interval which is about 10 seconds. Some players may get disconnected early and some may get disconnected after a longer period because if they miss current loop they need to wait for another 10 seconds to be disconnected.

Another problem is that on client side I don't see any environmental changes after the player gets killed. It just stops there and looks like connection is lost. (I don't have any client data controlling the updates, all the data comes from the server).

Share this post


Link to post
Share on other sites
Advertisement

Most game engines will have a priority queue of timed events.

Thus, you won't check all the things that could happen, "have you happened yet?"

Instead, you'd insert a record in the event queue saying "call this object function at this game time."

The game loop will then, in each simulation tick, advance time, then run all the event records that have a time less than or equal to the new game time.

That way, when the player dies, you simply insert a record saying "disconnect this player after 7.3 seconds" and it will happen at the right time.

This mechanism is often used for other things, too, such as the expiration time of buff spells, expiration of invites, and so forth.

 

Share this post


Link to post
Share on other sites

@hplus0603 Thank you. I am not using a game engine. I just build everything from scratch, for a simple game of course. I am not sure if a simulation tick means a update tick. But if I have such an event queue as you described, do I have to check the events in the queue in each update tick? I wonder whether it will put more burden on server or not if I put all the events in the update tick? In my game the update tick is 60 ticks /s and I do a network update at an interval of 10 times/s. Currently I am checking those status changes and events in the network update at various interval (100ms, 300ms, 500ms, etc.). And it is working nicely. But I always wonder if there is some subtle problem later on if I keep doing it this way. 

Share this post


Link to post
Share on other sites

Construct a new "muscle-less" state, where player is alive, yet unable to move. Instead of dying, you switch to that state, and you have full control in the player when it switches to dead state.

Share this post


Link to post
Share on other sites

 

4 hours ago, caymanbruce said:

do I have to check the events in the queue in each update tick? I wonder whether it will put more burden on server or not if I put all the events in the update tick?

You're worrying about nothing. The suggestion here is just to have a single list of events, ordered by time, so that on average you will only examine a single event every tick! There's no point having a 1/60 second tick if you're not willing to actually do anything with it.

Share this post


Link to post
Share on other sites

do I have to check the events in the queue in each update tick

You should look up the "priority queue" data structure, which is generally implemented as a heap.

This means that insertion is O(log N) and extraction of the next event to run is O(1)

Even if the queue is just a big ol' vector, insertion will be O(log N) for searching (binary search) and O(N) for the memcopy to make space for the event in the vector; turns out memcopy is very very fast compared to chasing pointers so that O(N) is unlikely to dominate.

Compared to scanning all players and other entities for all possible events every simulation tick, this will be a lot more efficient.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Advertisement