General Documentation Discussion

This page is broken.

Also, i cant find button to report issues on Docs anymore.

When performing an online session query in Unreal Engine, you have to update each search parameters like this:

SessionSearch = MakeShareable(new FOnlineSessionSearch());
SessionSearch->QuerySettings.Set(FName Key, <T> value); // set value for a key

Key is an FName, value type depends on what the key is for.

To access each setting, you need to know its FName key. You can’t search when you only know the bool variable name of the setting you want to change. I wasn’t able to find any information about this key/value system in the Unreal documentation, or anywhere else online, so I looked at the engine source.

Although you can get some indication of what they might be based on the comments in OnlineSessionSettings.h, the actual #define directives for each setting are hidden in Online/OnlineSessionNames.h

OnlineSessionNames.h excerpt

/** Search only for dedicated servers (value is true/false) */
#define SEARCH_DEDICATED_ONLY FName(TEXT("DEDICATEDONLY"))
/** Search for empty servers only (value is true/false) */
#define SEARCH_EMPTY_SERVERS_ONLY FName(TEXT("EMPTYONLY"))
/** Search for non empty servers only (value is true/false) */
#define SEARCH_NONEMPTY_SERVERS_ONLY FName(TEXT("NONEMPTYONLY"))
/** Search for secure servers only (value is true/false) */
#define SEARCH_SECURE_SERVERS_ONLY FName(TEXT("SECUREONLY"))
/** Search for presence sessions only (value is true/false) */
#define SEARCH_PRESENCE FName(TEXT("PRESENCESEARCH"))
/** Search for a match with min player availability (value is int) */
#define SEARCH_MINSLOTSAVAILABLE FName(TEXT("MINSLOTSAVAILABLE"))
/** Exclude all matches where any unique ids in a given array are present (value is string of the form "uniqueid1;uniqueid2;uniqueid3") */
#define SEARCH_EXCLUDE_UNIQUEIDS FName(TEXT("EXCLUDEUNIQUEIDS"))
/** User ID to search for session of */
#define SEARCH_USER FName(TEXT("SEARCHUSER"))
/** Keywords to match in session search */
#define SEARCH_KEYWORDS FName(TEXT("SEARCHKEYWORDS"))
/** The matchmaking queue name to matchmake in, e.g. "TeamDeathmatch" (value is string) */
#define SEARCH_MATCHMAKING_QUEUE FName(TEXT("MATCHMAKINGQUEUE"))
/** If set, use the named Xbox Live hopper to find a session via matchmaking (value is a string) */
#define SEARCH_XBOX_LIVE_HOPPER_NAME FName(TEXT("LIVEHOPPERNAME"))
/** Which session template from the service configuration to use */
#define SEARCH_XBOX_LIVE_SESSION_TEMPLATE_NAME FName(TEXT("LIVESESSIONTEMPLATE"))
/** Selection method used to determine which match to join when multiple are returned (valid only on Switch) */
#define SEARCH_SWITCH_SELECTION_METHOD FName(TEXT("SWITCHSELECTIONMETHOD"))
/** Whether to use lobbies vs sessions */
#define SEARCH_LOBBIES FName(TEXT("LOBBYSEARCH"))

what it actually means

KEY Meaning
SEARCH_DEDICATED_ONLY Search only for dedicated servers (value is true/false)
SEARCH_EMPTY_SERVERS_ONLY Search only for empty servers (value is true/false)
SEARCH_NONEMPTY_SERVERS_ONLY Search for non-empty servers only (value is true/false)
SEARCH_SECURE_SERVERS_ONLY Search for secure servers only (value is true/false)
SEARCH_PRESENCE Search for presence sessions only (value is true/false)
SEARCH_MINSLOTSAVAILABLE Search for a match with minimum player availability (value is int)
SEARCH_EXCLUDE_UNIQUEIDS Exclude all matches where any unique IDs in a given array are present (value is string of the form “uniqueid1;uniqueid2;uniqueid3”)
SEARCH_USER User ID to search for session of
SEARCH_KEYWORDS Keywords to match in session search
SEARCH_MATCHMAKING_QUEUE The matchmaking queue name to matchmake in, e.g. “TeamDeathmatch” (value is string)
SEARCH_XBOX_LIVE_HOPPER_NAME If set, use the named Xbox Live hopper to find a session via matchmaking (value is a string)
SEARCH_XBOX_LIVE_SESSION_TEMPLATE_NAME Which session template from the service configuration to use
SEARCH_SWITCH_SELECTION_METHOD Selection method used to determine which match to join when multiple are returned (valid only on Switch)
SEARCH_LOBBIES Whether to use lobbies vs sessions (value is true/false)

Fix this:

You need to stop promoting Nanite as Gods gift to static meshes. Because of this inaccurate statement in your documentation, studio’s(which 90% are ran by idiot, lazy, rushesd people) will use Nanite thinking that it’s a new form of optimizing meshes.
It isn’t and FN performance shows it.

Hello,

I suppose this page contains some errors or at least misused links or phrasing.

Note that Weak Pointers have no impact on whether an Object is garbage collected or not.

The article is about UObject but the link given leads to TWeakPtr which cannot be used with UObjects as far as I understand. The link should be directed to TWeakObjectPtr

Object destruction is handled automatically by the garbage collection system when an Object is no longer referenced. This means that no UPROPERTY pointers, or engine containers or smart pointer class instances should have any strong references to it.

The same. As far as I understand UObject cannot be used with smart pointers provided with Unreal Engine (TSharedPtr, TSharedRef, TWeakPtr). The link leads to those. I think it should not be mentioned here because it leads to confusion.

2 Likes

Can your documentation officially collaborate with Zeal? Zeal software already includes built-in Unity documentation. Zeal is highly convenient for viewing documents and is not affected by network loading speed. You can quickly browse, classify, search, and update in real time

1 Like

With the release of all this new stuff(lego ect.) they should bring back packs for old battle passes. Make it a challenge system so even if you missed the old sessions and are just now joining it isnt detrimental and you didnt completely miss out. The same systems would stay in place but eventually instead of getting to pay 950 vb for the battle pass and unlocking everything. lets say you spend 40 cash 5 years later on the anniversary battle pass bundle and now you have 60 challenges per character to keep people playing. Not total discouragement when people realize they missed something sure its gonna take several years before it comes back. It’ll be exclusive but not forever giving your try hards and the people who grinded for it time to flex and show they got it. Eventually leting casual players still work for it behind challenges like skull trooper had. Ive seen thousands of people missing skins from season 1,2,&3 and alot of new players stop playing before they ever really get started because there are dozens and dozens of old battle pass skins they want and can never get. Sure keep it exclusive for like 4 years then do like a returning bundle of anniversary skins and challenges (5 skins 125 challenges). You already have the skin from playing in season years ago just make the challenges worth xp. Simple things that would take time and a small team but would save fortnite. alot of new people are quitting fast because they missed out on to much and eventually alot of us sweety players from og aren’t gonna be playing and using those old BP skins. The new skins and new unlocks are dropping and not everyone goes for them especially if its a player who is more casual, a player who would be buying the anniversary bp challenge pack.

1 Like

Hello there everybody. Is there any way to retrieve back older versions of documentation for UE4? Cause maybe someone like me may have slow machine that can run only UE4 up until 4.27, but with some difficulties in fps framerate. So people like me want to dive in learning engine, but currently only 4.26 and 4.27 versions of documentations are available. Can it be fixed later and older versions added too?

1 Like

Hello! Noticed the Render Targets section is missing from UE5+ documentation.
It existed in UE4: Render Targets | Unreal Engine 4.27 Documentation

Thanks!

1 Like

I feel the new documentation is buggy and probably missing a lot of stuff.
First: Object hierarchy only shows UObjectBase
Second: I saw a lot of variables were missing f.e. RenderTransform of UWidget and ColorAndOpacity of UImage.

1 Like