Skip to content

Commit

Permalink
Add version 1.113.3
Browse files Browse the repository at this point in the history
Add 1.113.3 SDK files
Add debug config files
Adjust test cases to work for 1.113.3
Adjust unet library to work compile with 1.113.3
Add module definition generation utility and instructions
  • Loading branch information
grasmanek94 committed Apr 27, 2024
1 parent c0b4ae0 commit 8bf84a6
Show file tree
Hide file tree
Showing 62 changed files with 6,678 additions and 76 deletions.
96 changes: 96 additions & 0 deletions ConfigDebug/UniverseLAN.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
; This is the base config file for both the Client AND the Server
; It is part of the UniverseLAN project located at https://github.com/grasmanek94/UniverseLAN
[Storage]

; GameDataPath is used by the game/DLL
;
GameDataPath = UniverseLANData

; ServerDataPath is user by UniverseLANServer executable
;
ServerDataPath = UniverseLANServerData

[Authentication]

; Client and server must have the same authentication key
;
; If a client doesn't have the right key, the server will refuse the connection
;
; Can be generated with OpenSSL:
; openssl rand -base64 64 | paste --delimiters '' --serial
; With PowerShell:
; powershell -command "[Convert]::ToBase64String((1..64|%{[byte](Get-Random -Max 256)}))"
;
; THIS IS NOT AN ENCRYPTION KEY! MERELY AN AUTHENTICATION KEY
; (so that random clients cannot willy-nilly connect to your server)
;
Key = 9g5tA53SLyiNkBTqsX3BmBgy/PPVTU6VGKWNNw3wUIY5nK1C2MOT4UsZ2pauCb8fm5UQSJRijid+w1t9WpDaKQ==


[Tracing]

; Disable to improve performance
;
CallTracing = 1

; If we should handle unhandled exceptions?
;
UnhandledExceptionLogging = 1

; Create minidump when unhandled exception occurs
;
MiniDumpOnUnhandledException = 1

; 0 - Normal minidump
; 1 - More data, ram etc
; 2 - Almost everything possible
;
MiniDumpVerbosityLevel = 2

; Disable to improve tracing performance
;
AlwaysFlush = 1

; Which tracing flags to enable
;
; Combine with a pipe symbol |
; Like: CallTracingFlags = INFORMATIONAL | HIGH_FREQUENCY_CALLS | ARGUMENTS
;
; INFORMATIONAL (always enabled)
; HIGH_FREQUENCY_CALLS
; ARGUMENTS
; RETURN_VALUES
; DETAILED
; ICHAT
; NETCLIENT
; ICUSTOMNETWORKING
; IERROR
; IFRIENDS
; GALAXYDLL
; GALAXYDLL_GAMESERVERAPI
; LISTENERREGISTRAR
; ILOGGER
; IMATCHMAKING
; INETWORKING
; ISTATS
; ISTORAGE
; ITELEMETRY
; IUSER
; IUTILS
; IGAMESERVERAPI
; IGALAXYTHREAD
; IAPPS
;
; TRACE_ALL_FLAGS (this one will trace ALL of the above with a single option)
;
; (check Tracer.hxx for all possible flags)
;
; Prepending ! or ~ allows to disable a certain option
; Like: CallTracingFlags = TRACE_ALL_FLAGS | !HIGH_FREQUENCY_CALLS
;
CallTracingFlags = INFORMATIONAL | TRACE_ALL_FLAGS

; Enables tracing to console (in addition to tracing to tracefiles)
; Can slow down the game extremely in some cases.
;
TraceToConsole = 0
6 changes: 6 additions & 0 deletions ConfigDebug/UniverseLANData/Achievements.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[ExampleAchievement001Name]
Description = Describes the achievement nr 1
Unlocked = 0
UnlockTime = 0
Visible = 1
VisibleWhileLocked = 1
Binary file added ConfigDebug/UniverseLANData/Avatars/me.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
72 changes: 72 additions & 0 deletions ConfigDebug/UniverseLANData/Config.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
[Settings]
Language = english

; Enable all downloaded and installed DLC which you already own
EnableAllDLC = 0

; When enabled, client will save any requested DLC product IDs into UniverseLAN\DLC.ini
SaveUnknownDLCIDs = 1

SaveAchievementsAndStats = 1

EnableConsole = 1

[Storage]
AllowFileSharingDownload = 1
AllowFileSharingUpload = 0

[Telemetry]
Store = 0

[Client]
ServerAddress = 127.0.0.1
Port = 19486

[User]
; PersonaNameType can be:
; - @WindowsAccountName
; - @WindowsAccountNameHash
; - @ComputerName
; - @ComputerNameHash
; - @NetworkAdapterMACHash
; - @ProcessID
; - @Custom (allows you to specify your username in CustomPersonaName)
;
PersonaNameType = @ProcessID
CustomPersonaName = Player

; If true (1) then CustomPersonaName will be appended to
; whatever option has been chosen for PersonaNameType.
;
; For example if
; "PersonaNameType = @ComputerName"
; and
; "CustomPersonaName = Player"
; then the resulting name will be
; "ComputerNamePlayer"
;
SuffixPersonaNameTypeResultWithCustomPersonaName = 1

; GalaxyIDType can be:
; - @WindowsAccountNameHash
; - @ComputerNameHash
; - @NetworkAdapterMACHash
; - @Custom
;
GalaxyIDType = @NetworkAdapterMACHash

; 64bit unsigned integer
CustomGalaxyID = 1

; static offset that is applied to the custom or calculated GalaxyID
; Can be:
; - a literal / number
; - @ProcessID
; @ProcessID can be used to offset the GalaxyID with the ID value of the current process
; Useful when running multiple instances on a single computer (e.g. during tests)
GalaxyIDOffset = @ProcessID

; filename of the avatar
Avatar = me.png

SignedIn = 1
6 changes: 6 additions & 0 deletions ConfigDebug/UniverseLANData/DLC.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
; This category is automatically updated
; when a game requests a check of a certain product ID
; productid = 0/1
; If you wish to do so, you can disable or enable any DLC that you own and have installed
[DLC]
0 = 1 ; basegame
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
4 changes: 4 additions & 0 deletions ConfigDebug/UniverseLANData/Stats.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[Metadata]
PlayTime = 0

[Stats]
Empty file.
Empty file.
1 change: 1 addition & 0 deletions ConfigDebug/UniverseLANData/UserData.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[UserData]
Empty file.
11 changes: 11 additions & 0 deletions ConfigDebug/UniverseLANServerData/Config.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[Storage]

AllowFileSharingDownload = 1
AllowFileSharingUpload = 1

[Server]

BindAddress = 0.0.0.0
Port = 19486
MaxConnections = 1024
MaxTickRate = 200 ; in Hz
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
1 change: 1 addition & 0 deletions README.MD
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ Debug (tracing) files can be found in `<Configuration Files Directory>/tracing/<

| Game | Status | Tested GOG Galaxy SDK Version | Notes |
| :--------- | :-------: | :---------: | :---------: |
| SYNTHETIK: Legion Rising | :white_check_mark:(2) | 1.113.3 | Works since build 301 |
| Aragami 1 | :white_check_mark:(2) | 1.121.2 | |
| Forsaken Remastered | :white_check_mark:(3) | 1.124.0 | |
| Guns, Gore & Cannoli 2 | :white_check_mark:(3) | 1.124.0 | |
Expand Down
22 changes: 14 additions & 8 deletions Source/Client/GalaxyDLL.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -192,11 +192,11 @@ namespace galaxy::api
{
public:
GalaxyImpl() {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
}

virtual ~GalaxyImpl() {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
}

#if GALAXY_BUILD_FEATURE_HAS_INITOPTIONS
Expand Down Expand Up @@ -285,6 +285,12 @@ namespace galaxy::api
}
#endif

#if GALAXY_BUILD_FEATURE_HAS_ICHAT
virtual IChat* GetChat() const override {
return universelan::client::Chat();
}
#endif

virtual IListenerRegistrar* GetListenerRegistrar() const override {
return universelan::client::ListenerRegistrar();
}
Expand All @@ -305,11 +311,11 @@ namespace galaxy::api
class ErrorManager : public IErrorManager {
public:
virtual ~ErrorManager() override {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
}

ErrorManager() {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
}

virtual api::IError* GetLastError() override {
Expand All @@ -322,7 +328,7 @@ namespace galaxy::api

IGalaxy* GalaxyFactory::GetInstance() {
if (instance == nullptr) {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };

instance = new GalaxyImpl();
}
Expand All @@ -332,7 +338,7 @@ namespace galaxy::api

IErrorManager* GalaxyFactory::GetErrorManager() {
if (errorManager == nullptr) {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };

errorManager = new ErrorManager();
}
Expand All @@ -342,7 +348,7 @@ namespace galaxy::api

void GalaxyFactory::ResetInstance() {
if (instance != nullptr) {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };

delete instance;
instance = nullptr;
Expand All @@ -351,7 +357,7 @@ namespace galaxy::api

IGalaxy* GalaxyFactory::CreateInstance() {
if (instance == nullptr) {
Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };
//Trace trace { nullptr, __FUNCTION__, tracer::Trace::GALAXYDLL };

instance = new GalaxyImpl();
}
Expand Down
2 changes: 2 additions & 0 deletions Source/Client/Impl/Friends.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@ namespace universelan::client {
&IFriendInvitationListRetrieveListener::OnFriendInvitationListRetrieveSuccess);
}

#if GALAXY_BUILD_FEATURE_HAS_ISENTFRIENDINVITATIONLISTRETRIEVELISTENER
void FriendsImpl::RequestSentFriendInvitationList(
#if GALAXY_BUILD_FEATURE_IFRIENDS_INFORMATIONLISTENERS
ISentFriendInvitationListRetrieveListener* const listener
Expand All @@ -263,6 +264,7 @@ namespace universelan::client {
#endif
&ISentFriendInvitationListRetrieveListener::OnSentFriendInvitationListRetrieveSuccess);
}
#endif

uint32_t FriendsImpl::GetFriendInvitationCount() {
tracer::Trace trace { nullptr, __FUNCTION__, tracer::Trace::IFRIENDS | tracer::Trace::HIGH_FREQUENCY_CALLS };
Expand Down
2 changes: 2 additions & 0 deletions Source/Client/Impl/Friends.hxx
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,7 @@ namespace universelan::client {
#endif
) override;

#if GALAXY_BUILD_FEATURE_HAS_ISENTFRIENDINVITATIONLISTRETRIEVELISTENER
/**
* Performs a request for the user's list of outgoing friend invitations.
*
Expand All @@ -343,6 +344,7 @@ namespace universelan::client {
ISentFriendInvitationListRetrieveListener* const listener = NULL
#endif
) override;
#endif

/**
* Returns the number of retrieved friend invitations.
Expand Down
Loading

0 comments on commit 8bf84a6

Please sign in to comment.