Announcement

Collapse
No announcement yet.

Advanced Sessions Plugin

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    Hello, I've been pulling my hair out since Unreal updated from 4.24.0. I've been designing my game on my MacBook without a single issue, and your plugin has been amazing! But since I've updated to the latest, I'm getting a "rebuild from source manually" error, and my project is shut down. Does anyone have an idea of how to rebuild a plugin on mac? or can you PLEASE upload a 4.24.2 version? I have Xcode, and VS Studio installed, but they don't seem to do anything. I just have no idea what to do, nor have I found anything online about how to solve this problem. Thanks

    Leave a comment:


  • replied
    After some more testing I got my find session filtering working as desired after surmounting one additional challenge which I wanted to post here in case it helps anyone else:

    It appears each session property set in "Extra Settings" can only have up to one corresponding filter on the find session side. In my case I had an int session property called skill, and I had two filters on it to make a range (one less than, and one greater than). Only one of those two filters was working. So I broke out that single session property into two called skill_floor and skill_ceiling (with the same value), and made a separate corresponding filter for each - now it seems to be working beautifully

    Thanks again mordentral for your help here and making this incredible plugin!
    Last edited by faetell; 02-05-2020, 02:19 AM.

    Leave a comment:


  • replied
    I want to ask why I can 't open things after packing with 4.24. The error is that the plug-in can' t load "LogPluginManager: Error: Unable to load plugin'AdvancedSessions'. Aborting.". I don 't know where the problem is.

    Leave a comment:


  • replied
    Originally posted by faetell View Post
    mordentral thank you for the quick reply!

    Per your recommendation I did test with a single string value, and it worked! To be more specific I set the session property string in the extra settings of "Create Advanced Session", and then in Find Sessions Advanced I used an equal comparison op. I tested with the same string value and the server was found, and a different string value and the server was not found - perfectly as expected.

    I also tested with a single int session attribute (since < and > ops are critical to skill based matchmaking), and that also seemed to work.

    In my original version I had the following sessions properties: 2 string, 2 byte (for enum values), 1 bool. I haven't been able to root out what was causing it to not work in the first place for me, but I will continue to test as soon as I have time. If the bytes and bool are the cause of the problem it shouldn't be to hard to switch those over to strings.

    Some additional info I probably should have included up front: I'm using UE 4.24.1 installed from the launcher, which looks like it has v146 of the steamworks SDK bundled in.
    Ah, actually I just checked and the only subsystem currently even using that property for filtering is the steam one, and it only implements Int32,String,Float,Byte values (everything is converted to string in the end anyway). I implemented the full FVariantData as that is what Epic uses on the back end so a subsystem "can" use the full range, and their own subsystem coming up in fact may support all types.

    I'll make a note about which types steam supports for searching in the source, but just use something other than bool.

    You should still be able to retrieve values just fine, its just the filtering.
    Last edited by mordentral; 02-04-2020, 10:47 AM.

    Leave a comment:


  • replied
    mordentral thank you for the quick reply!

    Per your recommendation I did test with a single string value, and it worked! To be more specific I set the session property string in the extra settings of "Create Advanced Session", and then in Find Sessions Advanced I used an equal comparison op. I tested with the same string value and the server was found, and a different string value and the server was not found - perfectly as expected.

    I also tested with a single int session attribute (since < and > ops are critical to skill based matchmaking), and that also seemed to work.

    In my original version I had the following sessions properties: 2 string, 2 byte (for enum values), 1 bool. I haven't been able to root out what was causing it to not work in the first place for me, but I will continue to test as soon as I have time. If the bytes and bool are the cause of the problem it shouldn't be to hard to switch those over to strings.

    Some additional info I probably should have included up front: I'm using UE 4.24.1 installed from the launcher, which looks like it has v146 of the steamworks SDK bundled in.

    Leave a comment:


  • replied
    Hello! Since the last epic update from 4.24.1 to 4.24.2, I am having some issues with the plugin, after create advanced session is triggered the level open for a few frames then go back to the main menu map. I tried the same set up on an empty project and I had the same issue, but when I tried it on an older version it was ok. Let me know if someone is having the same issue!

    Leave a comment:


  • replied
    Originally posted by faetell View Post

    I came here to ask the same question! I've been searching everywhere and can't find any answers. It's exactly as War and Donuts said here: https://forums.unrealengine.com/comm...77#post1702977

    War_and_Donuts - any chance you got this figured out?

    Filter session results works no problem, but providing the session search settings array as the "Filters" input to "Find Sessions Advanced" seems to do absolutely nothing. I'm using the steam online subsystem and I checked the steam SDK - it looks like filtering session searches is supported?

    Being forced to use the Filter Session Results node would be a real bummer. That would mean all the clients would have to try to pull down as many sessions as they can fit into memory, and then try to sort through ALL of them to find matching sessions - and they would have to do that on EVERY iteration of the matchmaker - yikes. When people take this approach, what number are you guys using for "Max Results"? 1,000? 10,000? 100,000? 500,000? It's really hard to test how actually having that many sessions would impact client performance because while in development I don't ever have more than a couple sessions of the game up. If it is set too low, that means the client may just happen to pull down sessions that don't have any matches to the filtering criteria, so they'd get zero results when there actually may be many matching sessions.

    TLDR; I would really, really like to figure out how to get the "Filters" on the "Find Sessions Advanced" node to actually work!

    ...please help?



    P.S. Thank you for making this amazing plugin!
    Little curious what you are using for it, a simple string compare extra setting is working perfectly fine for me, finds the server with the filter correct, doesn't with it incorrect, filters out all of the extra servers with anything at all in the test app ID (4.24).

    I just tested it right now again, though I had also tested on the other guys original report.

    Can you test with just a string value? And if you are using something else let me know the value you are attempting to use?

    Leave a comment:


  • replied
    Originally posted by War_and_Donuts View Post
    ...Currently it appears to utilizing the 'Filters' array of the 'Find Sessions Advanced' is not working?...
    I came here to ask the same question! I've been searching everywhere and can't find any answers. It's exactly as War and Donuts said here: https://forums.unrealengine.com/comm...77#post1702977

    War_and_Donuts - any chance you got this figured out?

    Filter session results works no problem, but providing the session search settings array as the "Filters" input to "Find Sessions Advanced" seems to do absolutely nothing. I'm using the steam online subsystem and I checked the steam SDK - it looks like filtering session searches is supported?

    Being forced to use the Filter Session Results node would be a real bummer. That would mean all the clients would have to try to pull down as many sessions as they can fit into memory, and then try to sort through ALL of them to find matching sessions - and they would have to do that on EVERY iteration of the matchmaker - yikes. When people take this approach, what number are you guys using for "Max Results"? 1,000? 10,000? 100,000? 500,000? It's really hard to test how actually having that many sessions would impact client performance because while in development I don't ever have more than a couple sessions of the game up. If it is set too low, that means the client may just happen to pull down sessions that don't have any matches to the filtering criteria, so they'd get zero results when there actually may be many matching sessions.

    TLDR; I would really, really like to figure out how to get the "Filters" on the "Find Sessions Advanced" node to actually work!

    ...please help?



    P.S. Thank you for making this amazing plugin!
    Last edited by faetell; 02-02-2020, 02:21 AM.

    Leave a comment:


  • replied
    Hey,Could you please tell me the reason why my session's state is LAN when I create a dedicated server as WAN mode?

    Leave a comment:


  • replied
    Hi, guys! So, I have a problem with Uniquenetid. In short, I have a dedicated server that I want to connect to from Android. When trying to connect, an error appears in the Logs: PreLogin failure: incompatible_unique_net_id. Of course I understand that I'm doing something wrong. But I can't solve the problem on my own. Could you help me solve this problem?

    Leave a comment:


  • replied
    Hi guys ! I'm wondering something in the Create Advanced Session node. If i want Allow Join via Presence Friends Only set to true, do I have to let Allow Join Via Presence set to true or false ? Thanks a lot

    Leave a comment:


  • replied
    Originally posted by VaultedSky View Post
    Hey mordentral!

    I've seen this posted a few times in this thread, but I wanted to ask you a bit about the full servers not showing up on Steam search results.

    As you have mentioned, Steam OSS doesn't return full servers. I've asked Epic about this on UDN and they say that shouldn't happen and the SDK isn't doing it.
    I saw you showed an engine edit for it to work on OSS Null in OnlineSubsystemNullInterface - tried it just in case it would affect Steam and it does not.
    Do you have any suggestions on how to solve this? Thank you.
    They use "RequestLobbyList" for the steam API call to get the list of lobbies, which has this unfortunate text tagged to it in the Steam SDK documentation:



    Its not Steam OSS's fault, its Steam SDK.

    Leave a comment:


  • replied
    Hey mordentral!

    I've seen this posted a few times in this thread, but I wanted to ask you a bit about the full servers not showing up on Steam search results.

    As you have mentioned, Steam OSS doesn't return full servers. I've asked Epic about this on UDN and they say that shouldn't happen and the SDK isn't doing it.
    I saw you showed an engine edit for it to work on OSS Null in OnlineSubsystemNullInterface - tried it just in case it would affect Steam and it does not.
    Do you have any suggestions on how to solve this? Thank you.

    Leave a comment:


  • replied
    When I was going to host a dedicated server,although I choose the WAN mode,it still show in the LAN server list

    Leave a comment:


  • replied
    Originally posted by mordentral View Post

    The example project is steam by default, but that requiresnot only running the steam client but also making sure that you are on the same download region (as the sample AppID is region locked). Yeah you can post to the VR plugins thread though for further stuff regarding it.
    alright then, thanks for the heads up.. imma take another look at the system and if I still wasn't able to solve the issue I'll hit you up on the other thread if that makes things easier,
    Thanks again

    Leave a comment:

Working...
X