Note: The “Survival of the Fittest” Content is now fixed! If you wish to create a SotF-derived Total Conversion or Mod, just download it here and extract over your ARK Dev Kit directory to replace the base game content with SotF content: https://drive.google.com/file/d/0B0d9jibPVqYzYVpFRXNvdHJCckU/view?usp=sharing
Note: Ok now for real this time: The v200.5 ARK Dev Kit is at last posted to the Epic Launcher! You can update thru there
Furthermore, if you want to make a Total Conversion derived from ‘Survival of the Fittest’, or a Mod for ‘Survival of the Fittest’, extract this Content onto your ARK Dev Kit AFTER you update to v200.5 from the Epic Launcher: https://drive.google.com/file/d/0B0d9jibPVqYzYVpFRXNvdHJCckU/view?usp=sharing
That’s the SotF content (specifically anything changed above 200.5), and you can cook that as a Total Conversion, or cook a Mod from it, or cook new Maps to use with it!
And for SotF, the new Game Mode and Game State Blueprints are:
You can edit those to tweak much of the SotF game functionality, and of course TheIsland itself. And the various other gameplay Blueprints you already know of. You could release modifications to SotF as your own Total Conversion if you want to just edit everything directly, or you could inherit from the SotF GameData and classes, and cook a Mod (or a Map!) for SotF just like you would for the regular game.
So let’s move on to discussing how Total Conversions, Mods, and Maps all relate to each other now! As you see in the Cook & Upload dialog, you now have 3 Cooking options, which determines the kind of Content you’re going to be posting on Steam Workshop and how your Content will function.
Maps: These are listed in the Maps section of the Host Game menu. The user can only choose one Map to play on, and combine his choice of Map with any Mods. Technically your map can also override the PrimalGameData for new functionality (that’s an option in the World Settings), but note that using ANY mod will forcefully override the map’s choice of PrimalGameData. Maps can also not alter any existing shipped media, so any new or modified media needs to be duplicated into the Mod\MapName folder for your Map.
Mods: These are modifications to an inherited PrimalGameData; they are potentially stackable, though if you of course change fundamental things in your PrimalGameData, then you may need to note that your mod should be required to be a “Base” mod (i.e. the first in the stackable Mod list). Mods are listed in the “Mods” section of the Host Game menu, and the user is allowed to stack multiple mods. They can be combined with choosing a Map, of course. Mods have the critical limitation of not being able to alter ANY of the shipped game media, and only using inherited or duplicated classes & duplicated assets that are pointed to be its PrimalGameData and are placed within the Mod\ModName folder for Cooking (as described in the Mod tutorials). Despite these limitations, Mods have the benefits of potential stackability, and also not requiring the user to restart their game to enable them: they just seamlessly click on when you connect/host a server running a mod.
**Total Conversions: **These are the most powerful form of new content, and they are listed in the “Total Conversions” section of the main menu, because each Total Conversion is effectively a new game. When you cook a Total Conversion, you need to create an empty sub directory in the Mods folder for the Total Conversion to cook properly. You are allowed to alter ANY OF THE ASSETS YOU WANT, DIRECTLY! Literally, anything you can edit, you are welcome to edit. That includes PrimalGlobals, PrimalGameData, all of the artwork and blueprints directly, even replacing our main menus, startup Movie images and Ogg music files. You basically get to recook ARK the game and add or change anything. You can Cook as many Maps as you’d like with it as well, or just modify TheIsland and recook that (in which case, be sure to specify TheIsland). Total Conversion use a “diffing” check against the shipped game media to only package up assets that you have altered from our originals, this keeps the upload/download size REASONABLY small . Total Conversions also use separate matchmaking per Total Conversion, so you can’t see any non-TC multiplayer sessions when you’re within a TC (currently the core game will list TC sessions, and ask the user to autodownload the TC and relaunch if they try to join it).
**Note: When cooking a TC, you should at least specify TheIsland as a Map to Cook, because various assets are only referenced within that map (Dinos, etc). Even if you haven’t made any changes to TheIsland itself, this will ensure that all assets get “checked” for recooking in the TC. That should do it for you **
Any maps that you cook with your Total Conversion will be listed in the Maps list when you are playing your Total Conversion. Total Conversions, of course, can not Stack with each other, and while you can technically use Mods with Total Conversions, it can be dangerous if not explicitly designed to work together – however it will most likely be fine as long as you don’t rename your Total Conversion’s PrimalGameData (since so all mods inherit from PrimalGameData assuming that original asset name). New Mods and Maps can also be explicitly designed to work with a Total Conversion if you were to upload your Total Conversion source assets somewhere, which you’re welcome to do (such as what we’ve done with SotF). Think of a Total Conversion as a complete alternate set of media & assets for the game, because that’s basically what it is! We recommend that Total Conversion creators name their content with “Total Conversion:” at the beginning of its name on Steam Workshop, as that will display best within the in-game Total Conversion list and make it clear to users where they will find this new content listed within the game. Total Conversions have the downside of requiring an application restart to switch them, but they provide the most power to remake the game as you see fit.
Note there is a new button called “Reset GUID” near the upload section. This resets the “network version” on your Content, forcing players to update if they want to reconnect to a server. Use this if your Content has changed dramatically that might affect network gameplay (i.e. new objects, networking logic, or architectural changes) and you want to enforce a version mismatch multiplayer disconnection with older Content. If you do want to change the GUID, then you actually need to click that button BEFORE you COOK (or cook again after you change it ;). We’ll move that button soon to the “Cook” section of the menu to make that clearer.
Finally, we have completed initial work on an ARK Server Manager Tool ( http://steamcommunity.com/app/346110/discussions/10/530649887219814834/ ) which makes it much easier for Dedicated Servers to download, install, and manage the usage of their Mods, Custom Maps, and Total Conversions – we have it fully functional and working on Remote Windows Servers, and Linux Servers management is coming this week
A few other notes about what’s new in Dev Kit 200.0:
- To better support mod creators capabilities to make new game types, we have fully blueprinted almost all of the core GameMode and GameState logic, including such things as login, player spawning/respawning, spawn point selection, accepting/rejecting new players, and win-game conditions.
What’s a game mode? https://docs.unrealengine.com/latest/INT/Gameplay/Framework/GameMode/index.html
This was done for ‘Survival of the Fittest’ completely in Blueprint to show how you can now make entire new competitive game modes through Blueprint. You can open these GameMode/GameState classes in the SotF content and examine how they work to override many aspects of the normal spawn processes, and do all kinds of custom team logic and scoreboards:
Since Total Conversions provide the capability to replace assets such as the Spawn UI, you could create new game modes that go even further such as a class-based Team Fortress 2/Counterstrike style system. The Survival of the Fittest GameMode/GameState blueprints are the most extreme example so far.
Though to begin with, if you want to make a simpler blueprinted Game Mode, you can simply Duplicate this asset “Blueprint’/Game/PrimalEarth/CoreBlueprints/TestGameMode.TestGameMode’”, reparent it to CustomGameMode, and then create a new Blueprint based on CustomGameState, and set that as the GameStateClass in your new CustomGameMode. You can then use this new GameMode in your Map’s WorldSettings OverrideGameMode value, or set it as the Default Game Mode in your PrimalGameData. If that sounds confusing, I’ll upload a small example later
Then within your custom Game Mode & Game State classes, you can override the various Events that let you control how the default game logic works, as you can see SotF does.
- Now you can get a blueprint event within the PrimalItem object when an Item is equipped, unequipped, or used – just set “Use Blueprint Equipped Notifications = true” if you want the Equipped/Unequipped Blueprint Events to fire. To make neat custom items. We used this functionality for the Re-Fertilizer ( Blueprint’/Game/PrimalEarth/CoreBlueprints/Items/Consumables/BaseBPs/PrimalItemConsumableMiracleGro.PrimalItemConsumableMiracleGro’ ), but of course can have a ton more uses for an Item to do special things when Used or Equipped/Unequipped. You can see in that Re-Fertilizer Item how to get the Owner Actor from the Item when used (or equipped/unequipped) and then do whatever you want to that Actor (most likely a PrimalCharacter) or to the World around it.
So that’s about it for now. Feel free to post questions and we’ll do our best to answer, though it’s tough sometimes bouncing between game development and Dev Kit support, so please try to bear with me
Really excited to see what creative content designers will be able to put together with these new powers! We had a blast making ‘Survival of the Fittest’ within Blueprint to prove the power of the system, and we are pretty sure that’s just the tip of the iceberg – let your dreams flow and show us what you can do! (and win that Mod Contest )