Jump to content
  • DevDiary 13 - Co-op mode & Mod support

    Co-op mode & Mod support

    Yo, gamers! I'm Vlad Abadzhiev-Jahn, a programmer and designer at Haemimont Games. Today, I want to talk to you about two major features - our two-player online co-op multiplayer and modding!

     

    Ticket for One That Seats Two

    Multiplayer brings a whole other energy to a game's campaign. It allows you to explore tactical differences with your partner and devise strategies together, experience and discuss the story side by side, and it also adds replayability.

    Translating the single player experience as closely as possible while accommodating two people frictionlessly was a challenge both technically and design wise. Fortunately, we at Haemimont Games have some prior experience which gave us a strong foundation to draw from.

    Let's start with getting you and your buddy to Grand Chien. One player is designated the “host” and the other the “partner”. The host is the one who initiates the game and the partner is the player who joins the host’s game. When creating a game the host has the option of starting a new campaign with their partner or inviting them into an ongoing playthrough.

    We aimed to make the co-op gameplay as seamless as possible. The host can save and load games at any time as if they were playing alone and their partner will be there along for the ride. Additionally there is no functional difference between a save made in a co-op and single player, and the host can continue the game in single player if their buddy drops out. Both players can also load any of the saves (auto-saves or manual saves) created during co-op gameplay and continue them in singleplayer.

    01-CoopLateJoin.thumb.png.914b4baeb8f8674aeb9a87024a956717.png

    We found that in co-op games it is important for both players to be aware of what's happening in the moment-to-moment gameplay. We implemented a system where conversations with NPCs are controlled by the player who initiated them, but both players observe the conversation happening in real time. The non-controlling player can even offer suggestions for conversation options.

    02-CoopConversation.thumb.png.8b407191d9d72dfa467e6ad8374c874b.png

    In order for both players to be aware of what is going on, we had to make some compromises. For instance, both players can only explore the same sector in tactical view. Splitting up to tackle Grand Chien separately might sound appealing, but the majority of missions take place on multiple sectors and it can get disorienting.

    On top of that, there's the issue of how time advances when one player is engaged in combat in a different sector. It would be tedious for one player to spend 40 minutes in the Satellite View waiting for their partner to finish their tough fight with the Legion. Considering the technical challenges as well, having both players on the same sector made the most sense.


    Mercs for me, and for Thee

    Both players can hire mercenaries and manage squads, but since you're on the same side, you share funds and strategize together. To remain flexible the host player can assign and reassign control over individual mercs at any time. When in a sector (tactical view) players can only order their own mercs around, with both players being able to explore the sector and interact with it at the same time. During combat both players share a turn, which ends when both players click "Ready". Easy and simple!

    03-CoopParty.thumb.png.d5ae74b89db1a6a3079d8438eb34e14b.png

    In the beginning we were focused on preventing the players from trolling each other. This resulted in a sort of adversarial system which included mechanics such as only one player being able to control a squad in satellite view, or prompts for standing conversations with NPCs. Through testing and iteration we shifted our focus to a system that promotes co-operation and flow rather than preventing trolling. I mean, you can always shoot your friend's mercs, but remember, they’re your mercs as well! 🙂

    During development we discovered an interesting case where the host may take control over all mercs and leave none to their partner to control. With the partner unable to interact with the game all they can do is watch, which indirectly creates a kind of spectator mode for the game. It was initially reported as a bug, but it turned into a happy little feature.


    Navigating the Desync Minefield

    On the technical side chasing down desyncs was the most time-consuming part. For those unfamiliar with the term - a "desync" is essentially a mismatch in the result of a player's action between the two players' computers. Sometimes this can be as simple as the virtual dice landing on a different number, while other times as elaborate as a different merc appearing as hired on each person's screen.

    Desyncs may occur at any time as a result of any system. From the camera, through the inventory, combat, and even animations. While we fix every bug we catch, we don't want your game to be ruined because we missed one. If you encounter a desync while playing, a popup with a "Resync" button will open on the host's screen. Clicking it will trigger a quick loading screen and your game will be resynchronized, with no progress lost or rollbacks.

    Modding also directly impacts multiplayer. To ensure the game remains synchronized between the two players, any mods in use must be installed by both players. Mods that add content using our internal systems, such as weapons and mercs will be automatically synchronized. However, modders who dabble in scripting and coding will need to consider how to keep their functionality from desynchronizing and test their mods in co-op if they choose to support it.

     

    Your Game, Your Rules - Modding in JA3

    Modding has played a significant part in the history of Jagged Alliance as community made mods have ensured the game's continued longevity. Long after its original release in 1999, Jagged Alliance 2's torch keeps burning thanks to mods such as the popular 1.13 mod. From the get-go we knew how important it was to build the game with modding in mind for players and creators alike, and enable modders to create JA3's equivalent of the renowned 1.13 mod and much more!

    Modders will have access to the tools we use internally to create content such as mercs, weapons, items, quests, voice responses, and can even add support for new languages.

    04-ItemEditor.thumb.png.29a85ddfecdef282485674f3a25c19fb.png

    We believe that mercs and merc packs will be one of the more popular mod types. Our appearance editor tool allows modders to reuse existing game assets by mix and matching different body parts to create new models for mercs or NPCs. Mercs made from premade body parts won't be as unique as creating an entirely custom model, but they'll be easier to create. We wanted to make modding accessible and keep multiple options open.

    Modelers and animators can use Blender to export new assets for their mercs, weapon, or objects in the world. Adding new actions or a new weapon type such as dual wielding machetes for example, would require a whole new animation set as well.

    05-AppearanceEditor.thumb.png.93d39f61551638e383c07ac858d295b8.png

    To create a fully fleshed out merc modders will also want to upload 2D portraits (big and small) and create voice responses for their mercs. We look forward to seeing what kind of mercs the community comes up with!

     

    When Will Modding Be Available?

    All of these tools will be made available shortly after the release of Jagged Alliance 3. We want to focus on delivering a polished version of the game, and then release modding as part of the first major post-release update. The map editor and quest editor will come later on, with another major update, which will enable modders to create new maps, sectors, and entirely new campaigns. We're excited to see creators come up with their own stories and maybe even try to recreate Jagged Alliance 1 and 2 in JA3!

    06-MapEditor.thumb.png.c8438ebbe6e312898baba976f2707646.png

    That's it from me! I hope you have fun in Jagged Alliance 3 side by side with a friend and join the modding community as a player or creator.

    Vlad Abadzhiev-Jahn
    Programmer and Designer

     


    • Like 23
    • Thanks 7
    THQN Roger



    User Feedback

    Recommended Comments



    On 7/7/2023 at 9:09 PM, Haemimont_Vlad said:

    We have nothing to announce regarding crossplatform play at present, but it is definitely on our radar.

    Update! Yes, people on Steam will be able to play co-op with those on GOG. You can't use the "Invite Friend" functionality across platforms (as they don't share friendlists), but you can find each other's rooms in the browser or join via the room's join code (a unique 2-3 word string that is unique for each hosted room).

    On 7/8/2023 at 5:52 PM, ninjalex said:

    Can both players make an IMP or is it just the host? 

    There can be only one AIM merc in the campaign. We went back and forth a couple of times on this, but ultimately I didn't want the singleplayer game to be differently balanced from the co-op one. IMP mercs are very powerful in that you can optimize them to fit what you need in terms of stats and perks, and their contracts don't expire. For those who want to play differently, modders will be able to figure out how to enable multiple IMPs.

    19 hours ago, Goliath said:

    embracing unexpected mechanisms as possible features and not bugs

    Thanks for the kind words! Ultimately this is the best way to make a simulative, reactive, emergent game.

    19 hours ago, Goliath said:

    Will there be a possibility to have a VS or Deathmatch mode, where you can battle AGAINST your buddy

    Modders might decide to tackle that, but there is no such mode coming on release. If there is community interest it might happen.

    3 hours ago, ShadowMagic said:

    We may assume we can also mod / remodel existing Mercs to make them represent their JA2 images much more?

    Yeah, you can modify existing models, images, stat values of items, mercs and other content in the game.

    On 7/8/2023 at 1:20 PM, Tobutron said:

    I'm assuming we can make our own custom or unique (as far as "unique" goes) mercs using whatever in-game assets are available in the modding tool. How would we then be able to recruit them? 

    They would automatically show up in the AIM browser if you mark them as AIM mercs, otherwise you would have to mod in a specific way of obtaining them.

    On 7/8/2023 at 12:28 PM, bp_968 said:

    If we have to rely on the publisher/developers to keep co-op servers available then eventually at some point they will get shut off and the co-op feature will go away with it!

    I can't comment on what will happen in the far future. I wouldn't rule it out, and I wouldn't bet on it either. Let's cross that bridge when we get there.

    • Like 2
    • Thanks 9
    Link to comment
    Share on other sites

    On 7/8/2023 at 12:03 PM, Grim said:

    Thank you for your answer Vlad.
    Could the number of coop players be extended in the future or are there hard blockers?

    It's hard to tell without attempting to do it.

    • Thanks 1
    Link to comment
    Share on other sites

    5 hours ago, ShadowMagic said:

    We may assume we can also mod / remodel existing Mercs to make them represent their JA2 images much more? (*cough* Magic, Shadow, Scope, Scully, Reaper etc *cough*). That would surely bring the much needed JA vibe to the game.

    I'm talking out of my ass here, but I assume the merc portraits/full-body dialogue images are just transparent PNGs (or some proprietary format that can be converted from a transparent PNG), so the challenge will just be finding a replacement image of sufficient size and quality.

    Changing their models will probably depend on whether you can find a model in-game whose pieces you like, since it appears we can modify models easily enough by swapping parts around.

    • Like 1
    Link to comment
    Share on other sites

    When it comes to modding, something that bothers me greatly is the choice to go with incredibly specific style and high-resolution portraits.

    Simpler "face only" portraits would have been easier to match in quality and scale by modders.

    Using a close-up of the 3D render, while not perfect would eliminate the need for 2D portraits at all.

    Instead, we got a solution that has all the possible flaws it could have:

    1. it lacks the expressiveness of the small animated portraits of the previous games
    2. it is difficult to replace by a different style of portrait due to the technical requirements and prevalence in it's display
    3. it is difficult to replicate by modders, in a way that invites the use of AI generated art
    Edited by Jaywalker
    Link to comment
    Share on other sites

    Omg, modding and 2 players coop... Can't ask for more... This time the preorder was a good idea, I mean, I've preordered just to celebrate the thousands of hours spent on JA2 anyway.
    I was also ready to drop the game after a few hours without regrets if disappointed by the gameplay, but the official modding support open the way to beat my records for hours played in my steam library (got 2 titles above 2500 hours, it will be an hard fight amyway).
    Can't wait for a new 1.13 mod with hundreds of guns, armors and LBE stuff!! 😄

    • Like 1
    Link to comment
    Share on other sites

    Am really curious how we can upload merc, portraits & models into the game ? I mean we would need a model creating programme for it ? Or we can just edit & change them with a specific tool only ? Also if we make a model it needs to show in the game too, guess editing itself (especially the whole game, world) takes way longer time then playing the game.

     

    Will we able to add our own voice lines as well when we create a character ? And some texts also for the enemies.

    Link to comment
    Share on other sites

    24 minutes ago, LoboNocturno said:

    Am really curious how we can upload merc, portraits & models into the game ? I mean we would need a model creating programme for it ? Or we can just edit & change them with a specific tool only ? Also if we make a model it needs to show in the game too, guess editing itself (especially the whole game, world) takes way longer time then playing the game.

     

    Will we able to add our own voice lines as well when we create a character ? And some texts also for the enemies.

    From what I understand you can reuse existing models/characters and their parts from available asset library then change profile photo.

    If you want your own model then Blender is your friend.

    You can do voice over

    Quote

    Modders will have access to the tools we use internally to create content such as mercs, weapons, items, quests, voice responses, and can even add support for new languages.
     

     

    • Like 1
    Link to comment
    Share on other sites

    19 hours ago, Stuurminator said:

    I'm talking out of my ass here, but I assume the merc portraits/full-body dialogue images are just transparent PNGs (or some proprietary format that can be converted from a transparent PNG), so the challenge will just be finding a replacement image of sufficient size and quality.

    Changing their models will probably depend on whether you can find a model in-game whose pieces you like, since it appears we can modify models easily enough by swapping parts around.

    @Haemimont_Vlad
    I assume Haemimont is in possession of the original image files or able to obtain them through their buddy Ian.
    Would surely help the modding community..

    Link to comment
    Share on other sites

    Come on guys, why always the need to citizize something, even if its actually a great awesome piece of offering?

    Why worry about portraits using hi res images? 

    Everybody can create whatever u dream of by using AI image generators. 

    Want it animated and talking? 

    There are apps that do even that. 

     

    The age of AI is a miracle for the modders scene. 

    Want a new merc modded in? 

    You can reuse parts of the existing ones or produce your own with blender & co. 

     

    So stop ur whining and show a lil more appreciation for a dev team that once in 3 decades manage to show the right attitide, ideas and approach to our lovechild! 

    Will everything be perfect in each n every way right at launch? 

    Of course not! 

    I mean how would anybody be able to deliver on that? 

    But what we see till now is the right direction, a lot of work that is done that opens possibilities for the future instead of restricting everything and delivering a closed product like others sadly did. 

     

    @Devs: u guys are awesome

    Edited by Goliath
    • Like 4
    • Thanks 2
    Link to comment
    Share on other sites

    23 minutes ago, Claypl said:

    Welcome to age of spoiled people 😉 In the past you had to edit raw files, no problem, now you have editor, huge issues.

    huh, yes to tweaks some weapons or mercs stats, notepad++ might do the the trick; perhaps to replace portrait any image editor can do the trick. Maybe it's still possible in JA3

    But how do you think you can design a conversation or a map using raw files?

    • Like 1
    Link to comment
    Share on other sites

    On 7/10/2023 at 12:17 PM, Haemimont_Vlad said:

    Yeah, you can modify existing models, images, stat values of items, mercs and other content in the game.

    May I kindly ask you about "other content"?

    Will it be allowed to alter these?
    A) skills
    B) traits behaviour (not mercs' traits, but what traits do)
    C) 50 % auto-weapon dmg reduction
    D) UI components
    E) AI behaviour (interrupt conditions, stealth system, first round reposition)
    F) aiming behaviour (especially interested in getting rid of "miss can't hit other body part")

    Answers of "yes / no / not now" will be enough for me. Not going to take more of your time. 🙂

    Thank you if answered!

    Link to comment
    Share on other sites

    On 7/10/2023 at 12:17 PM, Haemimont_Vlad said:

    There can be only one AIM merc in the campaign. We went back and forth a couple of times on this, but ultimately I didn't want the singleplayer game to be differently balanced from the co-op one. IMP mercs are very powerful in that you can optimize them to fit what you need in terms of stats and perks, and their contracts don't expire. For those who want to play differently, modders will be able to figure out how to enable multiple IMPs.

    Pretty much as I expected. And agree that IMPs are very strong, so it is understandable. Anyways incredibly cool that you have made it COOP, that is so exciting to see how it plays out in the actual game!

    Now it's just about recruiting friends to trying the game 😄

    • Thanks 1
    Link to comment
    Share on other sites

    4 hours ago, Reloecc said:

    May I kindly ask you about "other content"?

    Will it be allowed to alter these?
    A) skills
    B) traits behaviour (not mercs' traits, but what traits do)
    C) 50 % auto-weapon dmg reduction
    D) UI components
    E) AI behaviour (interrupt conditions, stealth system, first round reposition)
    F) aiming behaviour (especially interested in getting rid of "miss can't hit other body part")

    Answers of "yes / no / not now" will be enough for me. Not going to take more of your time. 🙂

    Thank you if answered!

    I'd say yes to all of the above, but most of these won't be easy. Only some of these things are editable through editors and are a matter of parameters, for everything else you'll need programming experience and knowledge of the Lua language to override/rewrite functions and add new ones.

    • Like 2
    Link to comment
    Share on other sites

    2 minutes ago, Haemimont_Vlad said:

    I'd say yes to all of the above, but most of these won't be easy. Only some of these things are editable through editors and are a matter of parameters, for everything else you'll need programming experience and knowledge of the Lua language to override/rewrite functions and add new ones.

    Doesn't need to be easy 🙂. "Possible" is well enough. Great news. Little sad about the "lua" part, as we have more modern well suitable scripting langs today, but it is what it is, thank you very much!

    Link to comment
    Share on other sites

    21 minutes ago, Haemimont_Vlad said:

    B) traits behaviour (not mercs' traits, but what traits do)
    C) 50 % auto-weapon dmg reduction
    E) AI behaviour (interrupt conditions, stealth system, first round reposition)
    F) aiming behaviour (especially interested in getting rid of "miss can't hit other body part")

    I did not expect these to be modifiable at all. Although at this point, I have no desire to modify them without having played the game first, just knowing that the possibility exists is quite amazing.

    Link to comment
    Share on other sites

    On 7/10/2023 at 4:21 AM, Haemimont_Vlad said:

    It's hard to tell without attempting to do it.

    PLEASE attempt to do it, then. My group is 3 players and we were all expecting/hoping for an IMP each and a 3P+ campaign. That was literally the basis for our group purchase.

    Link to comment
    Share on other sites

    7 hours ago, MiserablePixels said:

    PLEASE attempt to do it, then. My group is 3 players and we were all expecting/hoping for an IMP each and a 3P+ campaign. That was literally the basis for our group purchase.

    Maybe Multi-IMPs with reduced Points will do it. 100% is there a Mod in some weeks

     

    Link to comment
    Share on other sites

    On 7/10/2023 at 6:17 AM, Haemimont_Vlad said:

    Update! Yes, people on Steam will be able to play co-op with those on GOG. You can't use the "Invite Friend" functionality across platforms (as they don't share friendlists), but you can find each other's rooms in the browser or join via the room's join code (a unique 2-3 word string that is unique for each hosted room).

    There can be only one AIM merc in the campaign. We went back and forth a couple of times on this, but ultimately I didn't want the singleplayer game to be differently balanced from the co-op one. IMP mercs are very powerful in that you can optimize them to fit what you need in terms of stats and perks, and their contracts don't expire. For those who want to play differently, modders will be able to figure out how to enable multiple IMPs.

    Thanks for the kind words! Ultimately this is the best way to make a simulative, reactive, emergent game.

    Modders might decide to tackle that, but there is no such mode coming on release. If there is community interest it might happen.

    Yeah, you can modify existing models, images, stat values of items, mercs and other content in the game.

    They would automatically show up in the AIM browser if you mark them as AIM mercs, otherwise you would have to mod in a specific way of obtaining them.

    I can't comment on what will happen in the far future. I wouldn't rule it out, and I wouldn't bet on it either. Let's cross that bridge when we get there.

    I'm not sure I follow your statement here. What am not ruling out and what am I not betting on?  The way you've answered it your saying I shouldn't rule out your company going bust and co-op servers disappearing which doesn't seem like something a developer would usually say.

    Are you saying "don't rule out players getting the dedicated server code?"  Because that makes way more sense (even if it is highly unlikely since I can only think of a handful of game companies that have ever done that, ever, at all).

    Link to comment
    Share on other sites

    On 7/16/2023 at 8:51 AM, bp_968 said:

    I'm not sure I follow your statement here.

    Sorry for the confusion. I meant I wouldn't rule out server code being released in the future, but I wouldn't bet on it neither.

    With how moddable the game is we could see the community making their own server software as well.

    Link to comment
    Share on other sites

    So we shouldn't expect an official update on the inclusion of additional IMPs or expanded co-op player capacity? Or is that still an option? I don't see how offering that ability would negatively impact the game and yet it would make it MORE marketable and valuable to the demographic that want the capability to play 1-4P co-op, each with their own custom mercs.

    Link to comment
    Share on other sites

    If its a question of balance, as stated, then the difficulty scalability should be more than capable of offsetting that imbalance.. and we could simply play with the knowledge that things may be marginally 'easier' - that is, if the team doesn't want to implement some sort of scaling difficulty based on party size.

    Link to comment
    Share on other sites



×
×
  • Create New...