Difference between revisions of "Mods and Consoles"

From Holdfast: Nations At War
Jump to navigation Jump to search
 
(18 intermediate revisions by one other user not shown)
Line 1: Line 1:
==AGS Foreword==
+
{{DISPLAYTITLE:Console Cross-Play • Server Platforms}}
Starting with version v3.0, PS5 and Xbox Series players will join the Holdfast community via cross platform play.
+
{{ContentTemplateModernInline
 +
| welcome            = [[File:Forum Logo.png|link=|left|alt=Console Cross-Play]]
 +
| blurb              = How cross-play works (v3.0+), platform modes (Steam/Xbox/PSN), and which config lines break or allow cross-play.
 +
| sections_title    = On this page
 +
| sections_content  =
 +
* [[#AGS Foreword|AGS Foreword]]
 +
* [[#Server Platforms|Server Platforms]]
 +
* [[#Server Config Cross-Play Compatibility Table|Config Compatibility]]
 +
* [[#Notes & Caveats|Notes & Caveats]]
  
Players on both consoles won't be able to load mods. Unity on consoles uses IL2CPP (Ahead-of-time (AOT) compilation), which makes it impossible to load our Mono-based mods (just-in-time (JIT) compilation) at runtime. The Steam workshop, which is responsible for delivering mods to players on Steam, is also unavailable.
+
| featured_title    = Cross-Play & Server Platforms
 
+
| featured_content  = {{:{{FULLPAGENAME}}/Body}}
Apart from the technical challenges, we're also forced to follow '''strict''' rules outlined by each ecosystem. There's a reason why modding support is rare on consoles. Designing a system that ticks '''all the boxes''' on '''all the platforms''' is hard. Our modding system was created for Steam and trying to bend it to the rules proved unfeasible ''for now''.
+
| image_content      =
 
+
| layout            = auto
I know this comes as a disappointment to all the modders who poured their hours and their hearts into their creations. As someone who started his game dev career as a modder, I feel you and felt that I at least owed you an explanation.
+
| left_width        = 320px
 
+
  | aside_width        = 320px
''Walki, Lead Developer''
+
| gap                = 0.5rem
 
+
| show_toc          = no
==Server Platforms==
+
| show_section_edit  = yes
This chapter is meant to prepare community server administrators for the console release. '''Warning: Misconfigured servers will eject console players in mid gameplay.'''
+
}}
 
 
{| class="wikitable" style="text-align:center;"
 
|-
 
| '''Cross-play Compatible'''<br>[[File:Crossplay Compatible Server.png|750px]]<br>Any platform (Steam, Xbox or PlayStation) can connect to this server if they have cross-play enabled in their game settings.
 
| '''Steam Only'''<br>[[File:Steam Only Server.png|750px]]<br>This server is only visible to Steam players. This happens if the server detects that it is or has become cross-play incompatible (mods etc). This will '''EJECT''' and then reject console players trying to connect.
 
|-
 
| '''Xbox Only'''<br>[[File:Xbox Only Server.png|750px]]<br>This server is only visible to Xbox players that have cross-play disabled. It will reject players connecting from a different platform.
 
| '''PlayStation Only'''<br>[[File:PlayStation Only Server.png|750px]]<br>This server is only visible to PlayStation players that have cross-play disabled. It will reject players connecting from a different platform.
 
|}
 
 
 
You can set your ''preferred'' server platform using the <code>server_platform</code> global config command:
 
<pre>
 
server_platform None # (Default value, cross-play is on)
 
server_platform Steam
 
server_platform Xbox
 
server_platform PSN
 
</pre>
 
If the server detects that it has become cross-play incompatible, it'll force-change the <code>server_platform</code>. You'll be able to see this in the server browser. This can happen when loading or reloading ('''rc filereloader''') the config or during the loading of new mods, as it can't tell what a modid is until it has actually loaded it.
 
 
 
==Server Config - Cross-play Compatibility Table==
 
{| class="wikitable" style="text-align:center;"
 
|-
 
! !! Steam & SteamDeck !! Xbox & PlayStation !! Cross-play
 
|-
 
| objects_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| capture_point_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| spawn_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| starting_weapons_selection_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| firearm_ammo_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| ships_spawn_detail_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| ships_health_detail_override [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| mod_variable [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| mod_variable_local [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| mods_installed_server_only [any] || &#x2705; || &#x2705; || &#x2705;
 
|-
 
| mods_installed [uniform] || &#x2705; || &#x2705;* || &#x2705;
 
|-
 
| mods_installed [flag] || &#x2705; || &#x2705;* || &#x2705;
 
|-
 
| mods_installed [script] || &#x2705; || &#x274C; || &#x274C;
 
|-
 
| mods_installed [map] || &#x2705; || &#x274C; || &#x274C;
 
|-
 
| map_name ModMap || &#x2705; || &#x274C; || &#x274C;
 
|}
 
 
 
<nowiki>*</nowiki> Uniform and flag mods don't change the server platform, however they'll only be visible to Steam players. Console players will see a generic uniform/flag instead.
 

Latest revision as of 19:33, 19 September 2025


Console Cross-Play

How cross-play works (v3.0+), platform modes (Steam/Xbox/PSN), and which config lines break or allow cross-play.

Navigation menu