The new forums will be named Coin Return (based on the most recent vote)! You can check on the status and timeline of the transition to the new forums here.
The Guiding Principles and New Rules document is now in effect.

[Palworld] Craft - Build - Survive - Capture - Battle

1246713

Posts

  • VontreVontre Registered User regular
    Fiatil wrote: »
    Vontre wrote: »
    Fiatil wrote: »
    It's like being upset that there's no Switch/PS5 crossplay on some random third party title. It could happen, but it's not standard in the slightest.

    I am always upset about this. Particularly because I know what it takes to do and it's honestly not much. If their whole reason is that they want to push a Steam patch out every single day while the GamePass build rots, it makes sense but is not confidence inspiring. This has a real negative affect on customers (like myself) and that's just a straight fact. Like I get it, Steam is very easy to work with, but you're a live game now. Early Access isn't a shield to deflect criticism.

    What I'm telling you straight up is that, 9 times out of 10 the reason a game doesn't have cross play is that the production team didn't think it was important enough to prioritize (or Sony just being dicks for no reason). There are some exceptions, this is not one of them. If there was some common wisdom that crossplay like doubled your sales or some other massive positive impact, every game on earth would have it ready to go years before they even launched. The reason it's not working is because gamers don't care enough, and have been conditioned to think it's some monumental ask rather than the baseline expectation it should be.

    I can cut Palworld some slack purely because they're seemingly less established and struggling to keep the game running. But playing games with my friends is what I like to do. If the game won't allow it, it's a pass from me until later.

    You keep saying stuff that is blatantly false though.

    They're not "leaving the gamepass version to rot".

    They seem to have been doing everything but that this weekend, as they patched the gamepass version and I believe it's now at version parity with Steam.

    I'm not enough of a networking nerd to dispute that it's actually super easy like you say. I know other posters in this thread disagree with you, and if it were easy why wouldn't developers just...do it? Why did it take Darktide so long to do it? Why do some games just not have it at all? I don't understand why developers would maliciously choose not to do it if it's as easy as you claim.

    "I have this button I can press and all it will do is make my customers happy and give me good PR, nah I'm good".

    edit: gamepass is not at version parity with Steam as akjak noted, but did receive multiple patches this weekend.

    I really want to answer this more in depth but I'm short on time right now, I'll come back to it in a few hours, it's a good question to ask and the answer could get very long depending on how in depth I want to go. Politically and historically, consoles are the main reason this isn't standard yet and that's entirely because of business choices to deny cross play on the basis that the "winning" console always believes they garner an advantage by not having it (lately that has been Sony). You'll note that in the mobile space cross-play is 100% a standard baseline expectation and those games even generally have cross-play between all mobile platforms and PC (if they have it) at the same time. Just to set the stage here; I'll get into it more later!

  • FiatilFiatil Registered User regular
    edited January 24
    Vontre wrote: »
    Fiatil wrote: »
    Vontre wrote: »
    Fiatil wrote: »
    It's like being upset that there's no Switch/PS5 crossplay on some random third party title. It could happen, but it's not standard in the slightest.

    I am always upset about this. Particularly because I know what it takes to do and it's honestly not much. If their whole reason is that they want to push a Steam patch out every single day while the GamePass build rots, it makes sense but is not confidence inspiring. This has a real negative affect on customers (like myself) and that's just a straight fact. Like I get it, Steam is very easy to work with, but you're a live game now. Early Access isn't a shield to deflect criticism.

    What I'm telling you straight up is that, 9 times out of 10 the reason a game doesn't have cross play is that the production team didn't think it was important enough to prioritize (or Sony just being dicks for no reason). There are some exceptions, this is not one of them. If there was some common wisdom that crossplay like doubled your sales or some other massive positive impact, every game on earth would have it ready to go years before they even launched. The reason it's not working is because gamers don't care enough, and have been conditioned to think it's some monumental ask rather than the baseline expectation it should be.

    I can cut Palworld some slack purely because they're seemingly less established and struggling to keep the game running. But playing games with my friends is what I like to do. If the game won't allow it, it's a pass from me until later.

    You keep saying stuff that is blatantly false though.

    They're not "leaving the gamepass version to rot".

    They seem to have been doing everything but that this weekend, as they patched the gamepass version and I believe it's now at version parity with Steam.

    I'm not enough of a networking nerd to dispute that it's actually super easy like you say. I know other posters in this thread disagree with you, and if it were easy why wouldn't developers just...do it? Why did it take Darktide so long to do it? Why do some games just not have it at all? I don't understand why developers would maliciously choose not to do it if it's as easy as you claim.

    "I have this button I can press and all it will do is make my customers happy and give me good PR, nah I'm good".

    edit: gamepass is not at version parity with Steam as akjak noted, but did receive multiple patches this weekend.

    I really want to answer this more in depth but I'm short on time right now, I'll come back to it in a few hours, it's a good question to ask and the answer could get very long depending on how in depth I want to go. Politically and historically, consoles are the main reason this isn't standard yet and that's entirely because of business choices to deny cross play on the basis that the "winning" console always believes they garner an advantage by not having it (lately that has been Sony). You'll note that in the mobile space cross-play is 100% a standard baseline expectation and those games even generally have cross-play between all mobile platforms and PC (if they have it) at the same time. Just to set the stage here; I'll get into it more later!

    Sounds good! I'm mostly interested in the description of how it's just super easy to do -- the suggestion being of course that the cost/time is insignificant to the point that any studio could do it -- as none of the networking folks I've spoken with seem to be under that impression but I'm willing to hear out why that's incorrect.

    I do understand that historically "console wars" can play a part, and stuff like "well we don't want KBAM players and controller players in the same matches together", but I don't think any of those apply to a Japanese indie developer that has released a game for Xbox and PC that freely allows you to switch input method.

    There's 0 indication that Valve has ever paid someone for some kind of faux exclusivity like that. My guess is that Microsoft paid them some amount of money to get it on Gamepass (which yes probably plays into the lack of announcement for the PS5 right now!), but Microsoft gains nothing by paying or encouraging them specifically to not interface with Steam..........and like, we already know they're working on crossplay as they've stated and reiterated numerous times. It doesn't really match up with any of the historical examples you've alluded to (and we're ultimately talking PC to PC compatibility primarily), but I know there's more to come.

    Fiatil on
    steam_sig.png
  • PhyphorPhyphor Building Planet Busters Tasting FruitRegistered User regular
    Crossplay varies between trivial and extremely complex. In theory, this is one of the simpler cases because the engine generally handles most of the details and the platforms are essentially identical, but it still has two major issues
    1) identical clients
    2) matchmaking

    From what it sounds like there are non-trivial changes between the two clients right now so you might not actually be able to get the two to talk together. This is not terribly surprising if they just made changes to one to just get it to work. There's also patch cadence issues, no point in even attempting crossplay if their patch cadence on steam is daily and on xbox is weekly

    Crossplay matchmaking is quite tricky and several assumptions like "the online subsystem we use for everything will have information about this other player" are now false - an xbox user playing with a steam user means neither can query the other system since they're each only logged into one. It's quite likely that the dedicated server uses the steamworks SDK matchmaking and validation too since you do get that for free with steam at least. This probably requires that they write their own server and all that entails. You can get things done extraordinarily quickly as long as you stick to what the engine gives you - a single "online subsystem" and has friends, matchmaking, etc implemented for free, but once you stray off the happy path and need something custom things slow down

    Compounding all of this, this is a junior team, so they're unlikely to do things in the proper way from the start and more likely to just kludge things so they work instead of doing a proper cross platform fix

  • VontreVontre Registered User regular
    edited January 24
    Ok so I think I can break this down into 3 big categories when it comes to online cross-play.

    Compatibility: You have an online game on two or more platforms, and they need to be able to talk to each other; you just want them to function, pure and simple. This is the most critical concern but, fortunately, also the easiest in most cases. But let's break down those cases. At a very high level, there are effectively two major network synchronization models used by online games; server authoritative, and deterministic. They aren't necessarily mutually exclusive, but to some degree one of these has to be the primary authority on how the game simulation operates.

    Server authoritative just means that a central server simulates the game and is the ultimate source of truth on the game's state. The game's state is transmitted from the server down to game clients, who synchronize themselves seamlessly to the server's information. Usually, the clients have some light predictive behavior to compensate for lag, but the server is ultimate authority and any slight deviation in state is corrected.

    Determinism is a technique by which the server does not need to actually maintain or transmit state. Clients maintain synchronization by calculating the state on their own using the same player input information. It's called "deterministic" because the output of those calculations need to match *precisely* for every single client, for every single byte. It is very hard to make an existing program that was not planned for it cross-platform deterministic, and relatively easy to do if you know what you're doing and prepare for it on day 1 of development.

    Generally you can guess what kind of model a game is using based on its genre. Server authoritative is much easier to achieve, broadly supported by game engines, and this makes it generally appropriate for most typical online genres. Determinism is most commonly associated with fighting games, but may also be used for other types of games with very tight frame-by-frame gameplay. It's generally an odd choice though, as it requires more specialized expertise to build and maintain. It also works best when matches are short and have a defined, universal start and end time. Any game with a persistent, long-running server like Minecraft or WoW is going to favor server authoritative because they need to maintain server state and transmit it to players who join up. If you're looking at a game that is hybridizing or something fancy like that, you are looking at a team that probably knows what it's doing and has need of more advanced networking to achieve a specific result.

    Minor edit: Also fun to point out here that sometimes games pick the wrong method for what they're building with disastrous results. Multiversus made a fighting game with a server authoritative model and suffered incredibly for it.

    Ok so all that said, if you are doing a server authoritative game and you have no need of determinism, your cross-platform compatibility is effectively free. Your game server is the authority on state and it's not dependent on any client platforms at all. Your clients are connecting to the server and receiving and interpreting the same data in the same way. Minor differences in client prediction would be seamlessly corrected, this is something that could happen between different PC builds in the first place so you're already good there.

    For Palworld, remember that cross-play between XBox and PC is already happening. So it's very unlikely this is an issue.

    Deployment Logistics: This is where it can start to get more thorny. You have an online game and it needs regular patches, and those patches need to go out to customers. But not every customer will patch at the same time, so you could have two players who are playing on different builds, or someone has a different build from your server. What to do?

    One way of handling this is with OTA (over the air) updates, but I'm just mentioning this for completeness. This is a technique where new game content can be downloaded by the program itself, so you don't have to actually update the user's program. But it's a lot of work to develop and host these assets and you can't deploy new code in this way for security reasons, so it's not really relevant here.

    In the old days, if a game wanted to patch, it would just kick all the players out, take the servers down, and force everyone to download the new client from the game's launcher in order to play. Nowadays with always-on expectations and third party app delivery, this is not so feasible. Note thought that this is an issue even on a single platform - a player on Steam could be on an outdated version for days or more if you do nothing, and they won't necessarily know how to get the latest build if they aren't a power user. Some games write things specifically to maintain backwards compatibility for a short time, so users on the old version don't break. Others force an update before next login, and instruct their users on how to force Steam to do an update. A more robust technique is to feature flag things and deploy the client ahead of time, then remote-activate the features once they are satisfied that all the players have updated.

    It sounds like deployment logistics is where Palworld is tripping up. But the solution of splitting up by platform comes with its own costs, because now you need to maintain two sets of servers for the different versions. Deployment logistics over multiple platforms is a pain, but it's going to be a pain no matter what you do. Having two different versions of the live game just comes with a different set of challenges and pain points. You can't actually opt out of managing deployment logistics in the way that a single player game would, you have to do something and imo the delta between different approaches is not large.

    Platform Specific Features: Various platforms have inbuilt features that devs can take advantage of to facilitate the ease of development. Stuff like party systems, friends list, lobby lists etc. If you are leaning very hard on these, then it will in fact take a lot of work to roll your own features and get that done. Usually though, these features get done anyway because the features don't overlap and you end up needing a custom solution for one platform anyway. XBox has a party system, but Steam does not. Steam has a lobby system to help facilitate multiplayer, not sure if XBox or the others do. So if your game needs parties and you want to be on Steam at all, you need to spin your own party system, the fact that XBox has one means nothing. This concern probably is most relevant to indie devs, who may lean hard on Steam's feature set to get things done and not worry about going to console until they're already successful. For a server-based survival crafting type game, you might indeed be using Steam's inbuilt server browser functionality, and maybe XBox has one as well, so you need to roll your own for players to even find each other. If you're a company like Blizzard, with their own infrastructure and battle.net accounts, you don't need to worry about this in the slightest.



    In fact at the end of the day, Diablo 3 was cross-platform just by default, and they would have had to do extra work just to make it not work cross platform. Your issues can range from that, where it's literally more work to disallow cross-play, to your fighting game where you didn't account for floating point variance in your deterministic simulation and now your clients can't even stay synchronized at all without a year of code retrofit and a dozen engineers (I have had a team contact me once to try and fix this with their game 3 months out from launch, and just, oh man you do not want to be there). For a game like Palworld, based on its genre and existing deployment, I'd expect cross-play to be relatively low hanging fruit and they are just having trouble with the logistics and organization part. And that's ya know, whatever, small dev probably under-resourced for the game their making, sure. Hopefully they can resolve this quickly and get it done because it's a more than reasonable ask for a game of this kind. A lot of this stuff on the tech side is just things you need to be doing to build a PC online game of any kind. There are costs but they've already been paid in full.

    But also, cultural inertia is a huge deal, and this is the real difference between mobile dev and PC/console and their success with cross play. Google just fucking shits your app out into the void and different users will get access to it at different times over a 24 hour period and devs still manage to keep the games always online with cross-play and no disruptions of service. Steam is really the odd one out in just allowing you to deploy an app to all users *immediately*, they are the only platform that does that and even then they don't force downloads or anything so you still gotta handle deployment logistics.

    Vontre on
  • LD50LD50 Registered User regular
    I think you're missing a key thing here.

    Even if the game is already built for cross platform play and all they need to do is flip a switch, they still can't enable crossplay as things currently stand because the xbox/gamepass version of the game is not running the same version of the game client as the steam version, and they aren't in control of that version difference. They are at the mercy of Microsoft's patch certification process for getting updates pushed to the gamepass version of the game and let me tell you that isn't a fast process unless you are a very big publisher with an existing relationship with Microsoft.

  • Gnome-InterruptusGnome-Interruptus Registered User regular
    Haha, apparently there is a dodge/roll key, and a block key!

    Also getting better at managing my active Pal aggression stance.

    Made it to level 25 and defeated the first enemy trainer tower.

    steam_sig.png
    MWO: Adamski
  • FiatilFiatil Registered User regular
    edited January 24
    Hey yeah ultimately we're not too far apart. It sounds like you agree that there is a cost, and for a small development studio it's not a completely insignificant undertaking. They're flush with cash now, but can't just quadruple their team # this week and not have everything become a complete disaster because it takes time to scale.

    I think some of it is just how we approach Early Access. I'm okay with Early Access omitting stuff like that, as long as they don't mislead. There's not a flashing banner on the steam page saying NO XBOX CROSSPLAY -- that's not really how advertising and steam pages work -- but they did say before release that it would be missing for release. This is a common enough practice that my first thing to do when I heard "gamepass launch too" was check crossplay and see if we could all play together.

    Right now, it seems very very wise for that not to be priority #1. There are other more critical baseline issues that need to be fixed, and having everyone be at the mercy of Microsoft's certification process to get fixes isn't my idea of a fun time. At some point there will be a time when things have cooled down, and waiting an extra week for everyone to get the new batch of Pals together so Microsoft can certify and people can crossplay is fine.

    It just seems like a very reasonable prioritization of issues. I can confirm their networking team has a ton of work to do outside of crossplay too! They're not sitting there doing nothing, as the dedicated servers have many critical issues. The stories about playing on an official server right now are kind of comical with how much of a mess they are due to overload, and even hosting your own private server has issues with memory leaks and just some good old fashioned bugs that need to be squashed.

    Fiatil on
    steam_sig.png
  • MvrckMvrck Dwarven MountainhomeRegistered User regular
    LD50 wrote: »
    I think you're missing a key thing here.

    Even if the game is already built for cross platform play and all they need to do is flip a switch, they still can't enable crossplay as things currently stand because the xbox/gamepass version of the game is not running the same version of the game client as the steam version, and they aren't in control of that version difference. They are at the mercy of Microsoft's patch certification process for getting updates pushed to the gamepass version of the game and let me tell you that isn't a fast process unless you are a very big publisher with an existing relationship with Microsoft.

    Cities Skylines 2 had the same exact issue at launch. Basically it seems like until you hit a certain threshold of playing/popularity on Gamepass, Microsoft doesn't invest resources into patch certification if you're a third party publisher.

    After about a week and a half, the patches for CS2 were simultaneous. Given the build disparity, I'd expect it to be a bit longer for Palworld, but not too much. I'd expect patch parity by the first weekend in February if they can get the gamepass version caught up.

  • PhyphorPhyphor Building Planet Busters Tasting FruitRegistered User regular
    edited January 24
    Vontre wrote: »
    Ok so I think I can break this down into 3 big categories when it comes to online cross-play.

    Compatibility: You have an online game on two or more platforms, and they need to be able to talk to each other; you just want them to function, pure and simple. This is the most critical concern but, fortunately, also the easiest in most cases. But let's break down those cases. At a very high level, there are effectively two major network synchronization models used by online games; server authoritative, and deterministic. They aren't necessarily mutually exclusive, but to some degree one of these has to be the primary authority on how the game simulation operates.

    Server authoritative just means that a central server simulates the game and is the ultimate source of truth on the game's state. The game's state is transmitted from the server down to game clients, who synchronize themselves seamlessly to the server's information. Usually, the clients have some light predictive behavior to compensate for lag, but the server is ultimate authority and any slight deviation in state is corrected.

    Determinism is a technique by which the server does not need to actually maintain or transmit state. Clients maintain synchronization by calculating the state on their own using the same player input information. It's called "deterministic" because the output of those calculations need to match *precisely* for every single client, for every single byte. It is very hard to make an existing program that was not planned for it cross-platform deterministic, and relatively easy to do if you know what you're doing and prepare for it on day 1 of development.

    Generally you can guess what kind of model a game is using based on its genre. Server authoritative is much easier to achieve, broadly supported by game engines, and this makes it generally appropriate for most typical online genres. Determinism is most commonly associated with fighting games, but may also be used for other types of games with very tight frame-by-frame gameplay. It's generally an odd choice though, as it requires more specialized expertise to build and maintain. It also works best when matches are short and have a defined, universal start and end time. Any game with a persistent, long-running server like Minecraft or WoW is going to favor server authoritative because they need to maintain server state and transmit it to players who join up. If you're looking at a game that is hybridizing or something fancy like that, you are looking at a team that probably knows what it's doing and has need of more advanced networking to achieve a specific result.

    Minor edit: Also fun to point out here that sometimes games pick the wrong method for what they're building with disastrous results. Multiversus made a fighting game with a server authoritative model and suffered incredibly for it.

    Ok so all that said, if you are doing a server authoritative game and you have no need of determinism, your cross-platform compatibility is effectively free. Your game server is the authority on state and it's not dependent on any client platforms at all. Your clients are connecting to the server and receiving and interpreting the same data in the same way. Minor differences in client prediction would be seamlessly corrected, this is something that could happen between different PC builds in the first place so you're already good there.

    For Palworld, remember that cross-play between XBox and PC is already happening. So it's very unlikely this is an issue.

    Deployment Logistics: This is where it can start to get more thorny. You have an online game and it needs regular patches, and those patches need to go out to customers. But not every customer will patch at the same time, so you could have two players who are playing on different builds, or someone has a different build from your server. What to do?

    One way of handling this is with OTA (over the air) updates, but I'm just mentioning this for completeness. This is a technique where new game content can be downloaded by the program itself, so you don't have to actually update the user's program. But it's a lot of work to develop and host these assets and you can't deploy new code in this way for security reasons, so it's not really relevant here.

    In the old days, if a game wanted to patch, it would just kick all the players out, take the servers down, and force everyone to download the new client from the game's launcher in order to play. Nowadays with always-on expectations and third party app delivery, this is not so feasible. Note thought that this is an issue even on a single platform - a player on Steam could be on an outdated version for days or more if you do nothing, and they won't necessarily know how to get the latest build if they aren't a power user. Some games write things specifically to maintain backwards compatibility for a short time, so users on the old version don't break. Others force an update before next login, and instruct their users on how to force Steam to do an update. A more robust technique is to feature flag things and deploy the client ahead of time, then remote-activate the features once they are satisfied that all the players have updated.

    It sounds like deployment logistics is where Palworld is tripping up. But the solution of splitting up by platform comes with its own costs, because now you need to maintain two sets of servers for the different versions. Deployment logistics over multiple platforms is a pain, but it's going to be a pain no matter what you do. Having two different versions of the live game just comes with a different set of challenges and pain points. You can't actually opt out of managing deployment logistics in the way that a single player game would, you have to do something and imo the delta between different approaches is not large.

    Platform Specific Features: Various platforms have inbuilt features that devs can take advantage of to facilitate the ease of development. Stuff like party systems, friends list, lobby lists etc. If you are leaning very hard on these, then it will in fact take a lot of work to roll your own features and get that done. Usually though, these features get done anyway because the features don't overlap and you end up needing a custom solution for one platform anyway. XBox has a party system, but Steam does not. Steam has a lobby system to help facilitate multiplayer, not sure if XBox or the others do. So if your game needs parties and you want to be on Steam at all, you need to spin your own party system, the fact that XBox has one means nothing. This concern probably is most relevant to indie devs, who may lean hard on Steam's feature set to get things done and not worry about going to console until they're already successful. For a server-based survival crafting type game, you might indeed be using Steam's inbuilt server browser functionality, and maybe XBox has one as well, so you need to roll your own for players to even find each other. If you're a company like Blizzard, with their own infrastructure and battle.net accounts, you don't need to worry about this in the slightest.



    In fact at the end of the day, Diablo 3 was cross-platform just by default, and they would have had to do extra work just to make it not work cross platform. Your issues can range from that, where it's literally more work to disallow cross-play, to your fighting game where you didn't account for floating point variance in your deterministic simulation and now your clients can't even stay synchronized at all without a year of code retrofit and a dozen engineers (I have had a team contact me once to try and fix this with their game 3 months out from launch, and just, oh man you do not want to be there). For a game like Palworld, based on its genre and existing deployment, I'd expect cross-play to be relatively low hanging fruit and they are just having trouble with the logistics and organization part. And that's ya know, whatever, small dev probably under-resourced for the game their making, sure. Hopefully they can resolve this quickly and get it done because it's a more than reasonable ask for a game of this kind. A lot of this stuff on the tech side is just things you need to be doing to build a PC online game of any kind. There are costs but they've already been paid in full.

    But also, cultural inertia is a huge deal, and this is the real difference between mobile dev and PC/console and their success with cross play. Google just fucking shits your app out into the void and different users will get access to it at different times over a 24 hour period and devs still manage to keep the games always online with cross-play and no disruptions of service. Steam is really the odd one out in just allowing you to deploy an app to all users *immediately*, they are the only platform that does that and even then they don't force downloads or anything so you still gotta handle deployment logistics.

    You're kind of overthinking this. This is a junior team making a game in Unreal

    Unreal already has abstractions for all of this
    They're not really carefully choosing server authoritative or client authoritative and writing replication, they're just doing
    DOREPLIFETIME(AThirdPersonMPCharacter, CurrentHealth);
    
    and letting the engine do it's thing. There's no way to version this, it's not like the network layer is protobufs or something where compatibility is the goal, it just serializes raw fields

    And maybe the xbox Player class has different fields than the steam Player class and stuff like that

    And they're going to just be using the Steam subsystem (https://docs.unrealengine.com/5.3/en-US/API/Plugins/OnlineSubsystemSteam/FOnlineSubsystemSteam/ ) which provides implementations of a common interface representing "online functionality" so all of this has been abstracted away. Presumably there is a different implementation for xbox, maybe in the sdk? But what there isn't is the concept of talking to an xbox player using the steam system, and there's definitely no concept of finding an xbox player to play with from steam. And steam won't let you on their system without a login, so all of that falls into custom implementation territory

    Comparison to say Diablo III is not really relevant because that launched on Battle.Net and well that's a common platform using a custom server and engine

    As for maintaining updated status, by default steam will push updates by changing the "play" button to an "update" button when a new build is pushed. It's possible to keep older versions around and some devs do that, but you have to either go out of your way to allow that, or players manually launch the game

    Phyphor on
  • anoffdayanoffday To be changed whenever Anoffday gets around to it. Registered User regular
    Are you guys playing solo or do we have a PA server?

    Steam: offday
  • AshtonDragonAshtonDragon AKA The Nix Registered User regular
    I've been mostly playing solo. It sounds like most people are either doing the same or playing with their family/friends.

  • VontreVontre Registered User regular
    Phyphor wrote: »
    You're kind of overthinking this. This is a junior team making a game in Unreal

    Unreal already has abstractions for all of this
    They're not really carefully choosing server authoritative or client authoritative and writing replication, they're just doing
    DOREPLIFETIME(AThirdPersonMPCharacter, CurrentHealth);
    
    and letting the engine do it's thing. There's no way to version this, it's not like the network layer is protobufs or something where compatibility is the goal, it just serializes raw fields

    And maybe the xbox Player class has different fields than the steam Player class and stuff like that

    And they're going to just be using the Steam subsystem (https://docs.unrealengine.com/5.3/en-US/API/Plugins/OnlineSubsystemSteam/FOnlineSubsystemSteam/ ) which provides implementations of a common interface representing "online functionality" so all of this has been abstracted away. Presumably there is a different implementation for xbox, maybe in the sdk? But what there isn't is the concept of talking to an xbox player using the steam system, and there's definitely no concept of finding an xbox player to play with from steam. And steam won't let you on their system without a login, so all of that falls into custom implementation territory

    Comparison to say Diablo III is not really relevant because that launched on Battle.Net and well that's a common platform using a custom server and engine

    As for maintaining updated status, by default steam will push updates by changing the "play" button to an "update" button when a new build is pushed. It's possible to keep older versions around and some devs do that, but you have to either go out of your way to allow that, or players manually launch the game

    Yeah my post got written before your other one came in. From experience the Steam update isn't that reliably fast for the end user, but you can kludge it by just kicking people offline when they are out of date. I didn't realize the team was so inexperienced as the game itself looks fairly professional. Ok, I admit I am not used to working in a space where a game has no real back end services or identification at all. I guess they'll have to move over to Google matchmaking or some other third party if they don't want to roll their own.

    Does Unreal's replication really have no versioning capability at all? I'd expect it to be abstracted yes but this must be a fairly common problem for their customers. Maybe it's just not a priority for console/PC devs and so has never been worked on.

  • PhyphorPhyphor Building Planet Busters Tasting FruitRegistered User regular
    edited January 24
    I haven't dug too deep into the guts, maybe they have the ability to ignore fields that don't exist, but it's not like you attach IDs to fields so if you delete or reorder fields well you're probably screwed. Unreal focuses on speed rather than compatibility, the expectation is that everyone is running a client that is basically the same and has the same objects so they can do quick serialization. They have an RPC system too and you can call functions that execute on a different machine and it's tricky to make all that work without enforcing discipline on the consumers of it. Like even with say protobufs and grpc and whatever, you can just delete fields and functions and break everything. You're just not supposed to

    The idea to do crossplay is you build everybody's client from a common codebase and then they can all talk the same object set. Once you're stable you can do smaller updates that don't change networking layout, or synchronize updates and check versions

    It's also possible that substantial portions of the game are implemented in blueprint too, which won't let you even tweak the implementation. It'll just be a "replicated variable"

    Phyphor on
  • akTheraakThera akjak Registered User regular
    Another hilarious example of “wrong authority” was New World, where in a Big Deal PvP MMO, they let the client be authoritative on All Kinds of Things and rampant exploits and cheating followed.

    Switch: SW-4133-1546-2720 (Thera)
    Twitch: akThera
    Steam: Thera
  • SkeithSkeith Registered User regular
    anoffday wrote: »
    Are you guys playing solo or do we have a PA server?

    Having more than two or three people makes resources a problem.

    aTBDrQE.jpg
  • QuidQuid Definitely not a banana Registered User regular
    Skeith wrote: »
    anoffday wrote: »
    Are you guys playing solo or do we have a PA server?

    Having more than two or three people makes resources a problem.

    I say it makes resources an adventure.

  • LucascraftLucascraft Registered User regular
    I’m not super familiar with this guy’s channel, but I really resonate with a lot of the things he says in this video.

    https://youtu.be/YTzfVsDy0gA?si=AU4jAWjkt80yQDpa

  • HevachHevach Registered User regular
    akjak wrote: »
    Another hilarious example of “wrong authority” was New World, where in a Big Deal PvP MMO, they let the client be authoritative on All Kinds of Things and rampant exploits and cheating followed.

    New World was worse than this. It was server authoritative... The server code was just shit.

    People thought it was client authoritative because as dumb as that was, allowing such basic and easily caught exploits on the server side was so much dumber even suggesting it was slanderous. Nobody could be THAT incompetent, right?

    Basically, "They hit the wall, it seems like they don't know how to drive." "No actually we do know how to drive but the car doesn't have brakes or mirrors or a steering wheel."

    You'd be forgiven for assuming the mundane stupidity rather than the astounding stupidity.

  • MvrckMvrck Dwarven MountainhomeRegistered User regular
    Skeith wrote: »
    anoffday wrote: »
    Are you guys playing solo or do we have a PA server?

    Having more than two or three people makes resources a problem.

    Not really? I'm really curious what is making you say that. I could see maybe ammo and balls having a bit of a crunch in the mid/late 20's where you're only on two bases if you're in a larger group/guild all sharing instead of dispersed with individual base networks. But otherwise everything is so renewable via either ranching, pits or just good base placement that I don't see what would actually be the issue.

    The only real consistent crunch I could see through the end game is Ancient Parts? But those aren't exactly things that you need to be mass producing, and with more people you have more man-hours to generate more than someone playing solo.

  • LD50LD50 Registered User regular
    Mvrck wrote: »
    Skeith wrote: »
    anoffday wrote: »
    Are you guys playing solo or do we have a PA server?

    Having more than two or three people makes resources a problem.

    Not really? I'm really curious what is making you say that. I could see maybe ammo and balls having a bit of a crunch in the mid/late 20's where you're only on two bases if you're in a larger group/guild all sharing instead of dispersed with individual base networks. But otherwise everything is so renewable via either ranching, pits or just good base placement that I don't see what would actually be the issue.

    The only real consistent crunch I could see through the end game is Ancient Parts? But those aren't exactly things that you need to be mass producing, and with more people you have more man-hours to generate more than someone playing solo.

    You can end up needing a lot of ancient parts for some of the epic blueprint recipes, and the bosses and dungeons only respawn so fast.

  • QuidQuid Definitely not a banana Registered User regular
    Doesn't everyone get the same amount of loot from the boss dungeons though? I don't see how that would affect it.

  • SkeithSkeith Registered User regular
    edited January 25
    Mvrck wrote: »
    Skeith wrote: »
    anoffday wrote: »
    Are you guys playing solo or do we have a PA server?

    Having more than two or three people makes resources a problem.

    Not really? I'm really curious what is making you say that. I could see maybe ammo and balls having a bit of a crunch in the mid/late 20's where you're only on two bases if you're in a larger group/guild all sharing instead of dispersed with individual base networks. But otherwise everything is so renewable via either ranching, pits or just good base placement that I don't see what would actually be the issue.

    The only real consistent crunch I could see through the end game is Ancient Parts? But those aren't exactly things that you need to be mass producing, and with more people you have more man-hours to generate more than someone playing solo.

    Listening to a few pals (heh) on Discord bitching about ore.

    Skeith on
    aTBDrQE.jpg
  • eMoandereMoander Registered User regular
    I started farming Grizlinx for some strong ice dps to start building a team for the next boss. Kinda challenging since they spawn at level 38-40 and I’m 29. One at a time they are doable though. I caught 3 with attack 390-395. Then I got one with muscle head which has an attack of 595!! Muscle head says it’s a 30% increase, but either their math is off or I got really lucky with hidden stat rolls. Either way, now I’m contractually obligated to keep farming to melt down and feed to my bestest boi.

    Xbox: Travesty 0214 Switch: 3304-2356-9421 Honkai Star Rail: 600322115 Battlenet: Travesty #1822
  • FiatilFiatil Registered User regular
    We haven't had any resource scarcity on our server of about 8 people, typically around 5 active.

    There are tons of really dense ore spawns -- it feels like it would take quite a few people powergaming pretty hard to despawn all of those? But ultimately you can just tweak the resource respawn rates in your server settings.

    Heh I thought "resources" meant RAM, because you are going to need a 32 gig server to support ~10 people online at once.

    steam_sig.png
  • MvrckMvrck Dwarven MountainhomeRegistered User regular
    edited January 25
    Skeith wrote: »
    Mvrck wrote: »
    Skeith wrote: »
    anoffday wrote: »
    Are you guys playing solo or do we have a PA server?

    Having more than two or three people makes resources a problem.

    Not really? I'm really curious what is making you say that. I could see maybe ammo and balls having a bit of a crunch in the mid/late 20's where you're only on two bases if you're in a larger group/guild all sharing instead of dispersed with individual base networks. But otherwise everything is so renewable via either ranching, pits or just good base placement that I don't see what would actually be the issue.

    The only real consistent crunch I could see through the end game is Ancient Parts? But those aren't exactly things that you need to be mass producing, and with more people you have more man-hours to generate more than someone playing solo.

    Listening to a few pals (heh) on Discord bitching about ore.

    They definitely are either under the level of having a second base, or just haven't efficiently set one up. Which isn't like a "you're playing the game wrong" thing, but the tools are 100% in game to make Ore not really a huge concern past when you get your second base up and rocking.

    Mine second base is set up at a spot where I managed to find a half dozen ore nodes or so, as well as 3-4 coal nodes on top of a mountain. My third base is likely going to be either sulfur or (more likely) quartz of a similar setup. I could see on a full 32 person server maybe not quite having enough of those high density spots, but even then, purely for mining, my Pals can't get through all the spawns fast enough before they respawn. To the point where my current gameplay goal is breeding up more work speed focused Pals to do it, so that I can diversify that base's production a bit more.

    Edit: Just logged in to check numbers, and that second base generated ~500 ore in about 6-7 hours. I'm not saying you can't go through that much, but that doesn't seem like an unreasonable amount per person.

    Mvrck on
  • LucascraftLucascraft Registered User regular
    Per this article on IGN, Nintendo has issued an official statement, promising to "investigate" and "take appropriate measures" to protect the Pokemon brand. They didn't specifically name Palworld in the statement.

    The full quote from the IGN article:
    "We intend to investigate and take appropriate measures to address any acts that infringe on intellectual property rights related to the Pokémon."

    The IGN article also says that the PocketPair CEO claims that their game has "cleared legal reviewing" and they do not think they are in any legal danger.

  • LD50LD50 Registered User regular
    That sounds like legalese for "we don't intend on doing anything", which makes sense given that both Nintendo and the Palworld devs are out of Japan, which has more draconian copyright laws than the US, and Palworld has been publicly in development for several years.

    If Nintendo intended on suing them I think they already would have.

  • AshtonDragonAshtonDragon AKA The Nix Registered User regular
    The response very much sounds to me like "Please stop messaging us about Palworld. We know."

  • Dr. ChaosDr. Chaos Post nuclear nuisance Registered User regular
    Lucascraft wrote: »
    Per this article on IGN, Nintendo has issued an official statement, promising to "investigate" and "take appropriate measures" to protect the Pokemon brand. They didn't specifically name Palworld in the statement.

    The full quote from the IGN article:
    "We intend to investigate and take appropriate measures to address any acts that infringe on intellectual property rights related to the Pokémon."

    The IGN article also says that the PocketPair CEO claims that their game has "cleared legal reviewing" and they do not think they are in any legal danger.
    Pocketpair are fine.

    This is basically Pokemon Company just saying "we know it exists okay? We know. We don't need 10k goddamn emails and press queries about it. Shut up."

    Pokemon GO: 7113 6338 6875/ FF14: Buckle Landrunner /Steam Profile
  • CururuCururu Registered User regular
    edited January 25
    LD50 wrote: »
    That sounds like legalese for "we don't intend on doing anything", which makes sense given that both Nintendo and the Palworld devs are out of Japan, which has more draconian copyright laws than the US, and Palworld has been publicly in development for several years.

    If Nintendo intended on suing them I think they already would have.

    I don't think Nintendo or Game Freak will actually take any legal action, unless there turns out to be blatant evidence of stolen/recreated models, but Palword being in development for several years isn't really a defense. All that was really available prior to last week were a couple of trailers, and the trailers seem to have gone out of their way to include only the least possibly infringing Pal designs. Most of the Pal designs were not known until recently, and quite a few of them are collar-tuggingly close to existing Pokemon designs. Palword may be in the clear, but they aren't doing themselves any favors by getting so close to the line.

    That being said, the statement does sound like Nintendo/Game Freak just wants the Pokemon fans to get off their backs about "suing Palword into oblivion" or the like. I honestly do not think Nintendo/Game Freak is concerned about Palword in the slightest. It isn't really a competitor. The game designs are wildly different. Palword is not a Pokemon game. It's a survival/crafting/base building game that happens to have Pokemon in it as one of the harvest-able resources/weapons. It's closer to a Monster Hunter game in that regard than a Pokemon game.

    Cururu on
  • LucascraftLucascraft Registered User regular
    I think the closest comparison is either ARK or Conan. In ARK you collect dinosaurs. Some of them are better suited to combat, and some of them are better suited to base defense and resource harvesting. Or in Conan you capture humans, enslave them, and force them to work in your base as artisans and defenders. There's very little Pokemon DNA here at all. It's almost entirely aesthetic and only skin deep.

  • zagdrobzagdrob Registered User regular
    That message definitely seems to be geared more towards anyone who thinks of taking a shot at real Pokemon IP, not Palworld.

    You've already got the moron modding Pokemon characters into Palworld and getting legally hammered. Not to mention I'm sure with the popularity of Palworld we're going to see a ton of low effort flips that are actually legally infringing on real Pokemon IP and not taking the legal care Pocketpair did to stay on the defensible side of the line.

  • CururuCururu Registered User regular
    Lucascraft wrote: »
    The IGN article also says that the PocketPair CEO claims that their game has "cleared legal reviewing" and they do not think they are in any legal danger.

    "Cleared legal reviewing" just means "the lawyers (on our payroll) have said it is OK". It's a mostly meaningless statement. There is no IP tribunal that you can go to to get your designs cleared ahead of time.

  • archivistkitsunearchivistkitsune Registered User regular
    You have to register you copyrights, which means that a decent lawyer has an easy means to take stuff that is in question and double check to ensure their client isn't in violation of someone's copyright.

    No one just gets to go, you're in violation of our unregistered copyright and we'll take you to court to extract as much money as we can. Once Pocket Pair got passed any one to one comparisons, Nintendo, and their legion of loser fan bois, didn't have a legal leg to stand on. Sure, someone could take it to court and the court sometimes says "sure we agree that while it's not one to one, it's close enough to be a copyright violation," but that is really fucking hard to achieve when we're talking about designs that are based off of fairly original ideas. One of the big fucking hurdles that Nintendo will run into is that a fair number of Pokemon designs are in themselves derivative of existing animals or figures from ancient mythology. Some of that shit, like animal, can only be drawn so many different ways before the well starts to run dry.

  • FiatilFiatil Registered User regular
    I'm glad I'm not the only one who read that statement as "yes please stop emailing us and calling us we know it exists and will investigate to be extra sure"

    The Twitter "they stole the models" guy had to clarify that he scaled the models up and down for comparison and is now all "there's really no way to confirm it I'm just saying!" aaaand short of evidence that they actually ripped off pokemon 3D assets it seems like they're fine.

    steam_sig.png
  • ironzergironzerg Registered User regular
    edited January 25
    I'm on mobile so sorry if this was on another page, but in regards to the tweets about stolen assets, turns out that was also faked. The original poster thought it would be funny and later came clean when it blew up.

    Edit: Yep, right above me. That.

    ironzerg on
  • AshtonDragonAshtonDragon AKA The Nix Registered User regular
    To be fair, it wasn't completely fake. There are some models that are extremely close to some pokemon stuff. But whether or not they are too close is something for Nintendo to figure out; I'm definitely well past caring about any of the controversy that many people on Twitter can't seem to get over.

    On the topic of playing the game, I took a glance at what kind of mods are available for it. And there's a good bit, most of which is the obvious stuff of course. But I saw one that changes the displayed inputs for controller from XBox ones to Playstation, and I think this might solve one of my biggest issues. For such a minor thing, it really causes problems for me. I can't not press the button on the left whenever the game tells me to press the "Y" button. I understand why games on Windows default to the displayed inputs for the Microsoft console, but the fact that they just flipped the buttons that Nintendo uses has been something I've never managed to straighten out in my brain.

  • DirtmuncherDirtmuncher Registered User regular
    To be fair, it wasn't completely fake. There are some models that are extremely close to some pokemon stuff. But whether or not they are too close is something for Nintendo to figure out; I'm definitely well past caring about any of the controversy that many people on Twitter can't seem to get over.

    On the topic of playing the game, I took a glance at what kind of mods are available for it. And there's a good bit, most of which is the obvious stuff of course. But I saw one that changes the displayed inputs for controller from XBox ones to Playstation, and I think this might solve one of my biggest issues. For such a minor thing, it really causes problems for me. I can't not press the button on the left whenever the game tells me to press the "Y" button. I understand why games on Windows default to the displayed inputs for the Microsoft console, but the fact that they just flipped the buttons that Nintendo uses has been something I've never managed to straighten out in my brain.

    Its just another way of staying away from Pokemon.

    steam_sig.png
  • Ninja Snarl PNinja Snarl P My helmet is my burden. Ninja Snarl: Gone, but not forgotten.Registered User regular
    I think it's more that Nintendo button labels have been "backwards" since Nintendo started making controllers and Microsoft flipped them to better fit what English-speakers expect. I've been playing Nintendo games since I was something like 7 years old and Nintendo controller buttons still feel backwards to me.

    The Sony solution was clearly the best: shapes instead of symbols, so there's no expected order. Though you then have Japanese devs who use X as confirm and O as cancel, which is just maddening to me.

  • cckerberoscckerberos Registered User regular
    The Sony solution was clearly the best: shapes instead of symbols, so there's no expected order. Though you then have Japanese devs who use X as confirm and O as cancel, which is just maddening to me.

    You have that backwards. In Japan, it was X to cancel and O to confirm (until the PS5, which standardized on the inferior Western mapping).

    cckerberos.png
Sign In or Register to comment.