Jump to content
Sparker

[MP][COOP] Vindicta (Alpha)

Recommended Posts

Really great mission @Sparker, we’ve been playing it on our dedi since you first released. The AI skills are rather insane, is that a designed feature? It is really like playing against humans in a competitive match. Adds also an interesting flavor to the game experience, as you really need to fight methodically to survive even against 1-2 opponents. 👍

Share this post


Link to post
Share on other sites

Recently started playing this and it's amazing. Still don't understand how some mechanics work but playing with a friend is pretty fun. The only problem so far is the AI difficulty which seems pretty high so playing in small groups isn't as enjoyable as it could be. Wish there was a difficulty setting but other than that, super job so far.

  • Like 1

Share this post


Link to post
Share on other sites
12 hours ago, Boomerang Trotter said:

Recently started playing this and it's amazing. Still don't understand how some mechanics work but playing with a friend is pretty fun. The only problem so far is the AI difficulty which seems pretty high so playing in small groups isn't as enjoyable as it could be. Wish there was a difficulty setting but other than that, super job so far.


Similar experiences here. Interesting to see what will be the situation when we spend couple days in our LAN-party playing this with group of ten players.

 

In our group the best AI-experience we’ve had in loooong time has come with LAMBS danger.fsm -mod. Would be cool if that could be run with Vindicta...

Share this post


Link to post
Share on other sites

Hi guys, thanks for the response. Please join our discord for discussions, it's much more active than the forum: https://discord.gg/dEYEZkM

 

You have well noted that AI skills are raised in the mission. In arma, neither mission creator (we) nor server owner has full control of AI skill. The resulting AI skill is a (very weird) combination of both values (and I don't quite like how the resulting value is calculated, since neither mission author nor server owner has enough control over the resulting skill).

You can try to set the skills lower in your or your server's profile and see if it suits you.

 

We didn't fully test it yet, but LAMBS danger.fsm should theoretically work with our mission. In short, any AI mod which doesn't make bots steal vehicles and doesn't give waypoints to groups should be able to work with our mission without much interference.

 

Quote

our LAN-party playing this with group of ten players

LAN party of 10 sounds amazing, please tell us how it goes!

 

On 3/8/2020 at 8:13 AM, TeddyBrosevelt said:

What mods are required to run the WWII factions?

Sorry @TeddyBrosevelt I was away for a month and can't give you precise answer, better join our Discord as well to find it out. Our documentation is still in progress as well.

Share this post


Link to post
Share on other sites
Quote

Please join our discord for discussions, it's much more active than the forum: https://discord.gg/dEYEZkM

 Doing it now. I had missed  this somehow...

Quote

We didn't fully test it yet, but LAMBS danger.fsm should theoretically work with our mission. In short, any AI mod which doesn't make bots steal vehicles and doesn't give waypoints to groups should be able to work with our mission without much interference.

I was suspecting is the case, thank you for commenting on it. 🙂

 

Quote

LAN party of 10 sounds amazing, please tell us how it goes!

I will! It usually allows us to concentrate on missions with more time and coordination. The crew have already asked if we could play Vindicta there, so I believe we will. 🙂

  • Like 1

Share this post


Link to post
Share on other sites

So technical ? I run a dedicated server that's running your mission vindicta. Now the question is can I load and save a save automatically?

Share this post


Link to post
Share on other sites

Feature Suggestion

A feature that might make this even better is a way to manufacture weapons, vehicles, and equipment. Have it by building or stealing factory's and getting resources and delivering them to your factory's. Then you can chose to manufacture different weapons and equipment.

  • Like 1

Share this post


Link to post
Share on other sites

Hi! Sorry didn't see your first question. No, there is no feature to auto-load a saved game, it has to be done manually. Later, I hope, we will implement it.

Share this post


Link to post
Share on other sites

Sparker! Big fan of the mission(s). My buddy and I play all the time. I do have a question, though: why are you using the red brick buildings instead of the Police station building for the Police stations in Livonia (pictured below)?

https://steamcommunity.com/sharedfiles/filedetails/?id=2047360329

https://steamcommunity.com/sharedfiles/filedetails/?id=2047360132

Share this post


Link to post
Share on other sites

Hi, devilslayersbane!
Thanks for feedback. Livonia map is not finished yet unforunately. I agree that we should use these buildings for police stations as well.

Share this post


Link to post
Share on other sites

First of all, big thanks to the Vindicta team for all of the awesome work they've done so far on this mission!
It's a standout among custom missions for many reasons, not least among which is that fact that it's so functional! It's worked so smoothly and without issue that the group I play it with have remarked constantly on the fact that it works.
If that's not a mark of excellence for an ARMA mission, I'm not sure what is!

All joking aside, I did have a question about an aspect of Vindicta that I was hoping I could have answered.
How exactly does the liberation mechanic for cities/towns work? I've searched around but cant seem to find anything clear on this.
I ask because two friends and I have been doing a run-through of the mission on Malden (small map for small group) and after liberating an initial small town, we haven't been able to liberate any further ones nearby.
This is despite having eliminated all hostile presence within the town, the immediate vicinity, and really the region at large
We've taken over all military installations on the southern portion of the island and repulsed attacks
And we've incited every civilian we could possibly find. 
In some cases, this has raised a town's stability to "In Revolt" but in others they will only become agitated. Civilians are occasionally planting IEDs and some are armed
I personally hung around a town for over an hour last night with it in revolt, and even after repulsing two earlier small attacks still nothing has changed.

Before getting too long winded I wanted to check if I was missing something here and try to get an understanding of the underlying mechanics for how this is supposed to work.
We've gotten it to work once so I'm confused as to why we cant get it to happen again despite doing essentially the same thing as before.
This isn't even a complaint so much as it is a curiosity, we're going to keep playing and enjoying the mission regardless, but hopefully we can get some insight as to what we're missing or doing wrong to correct our methods for the future.

  • Like 2

Share this post


Link to post
Share on other sites

Hi! Thanks for your feedback! I see it's your first message, welcome to the forum!

 

Currently the liberation works like this: you must attach a friendly garrison to a city and the city must have more friendly than twice enemy units. I agree that it's not documented properly, but it's because such mission rules still might change.

  • Like 1

Share this post


Link to post
Share on other sites
19 hours ago, Sparker said:

Hi! Thanks for your feedback! I see it's your first message, welcome to the forum!

 

Currently the liberation works like this: you must attach a friendly garrison to a city and the city must have more friendly than twice enemy units. I agree that it's not documented properly, but it's because such mission rules still might change.


Thanks for the welcome! 

Ahh that makes sense. I'll relay it and give it a go.
Admittedly I didn't even realize it was an option because there wasn't a police station or the like present, but now I know to muck around with it a bit more.
Many thanks Sparker!

  • Like 2

Share this post


Link to post
Share on other sites

Hi! I am loving the mod, but i can't seem to be able to recruit any friendly soldiers in my base. I've built tents and tried to drive AI's that I recruit in towns to the base, but upon arrival they de-spawn. Any clue how I should go from here?

Share this post


Link to post
Share on other sites

Hi! For quicker help, please join our Discord.


The bots in towns aren't meant to be taken from towns, so they despawn when you leave the town.
To recruit bots for a lot of time, do this:
Make an arsenal at your camp/outpost. Make sure it's attached to it. Make sure that it has some weapons.
The camp must be within the recruitment range of at least one city, this range is shown on the map when you click on your camp. The town also must have recruits available, for that you must destabilize the town.

Click on the camp marker on the map, click 'recruit', then it will let you choose the loadout for your recruit. When you confirm, he will be added to your camp.

 

Also check the in-game tutorial (accessible through the U-button menu), it has lots of useful information.

  • Like 1

Share this post


Link to post
Share on other sites

If a player splits from the group and rcruits AI, they start shooting at other players and their AI. Is that intendet?

Share this post


Link to post
Share on other sites

Hi!
No it's not intended.
It's some bug with side switching where it shouldn't happen, we'll investigate.

Share this post


Link to post
Share on other sites

This thread looks very abandoned, and indeed it is since we mostly maintain our Discord server. To compensate for this, I'd like to share some highlights of the work we are doing now. These changes are not released yet.

Ambient civilian presence redone

Previous variant just created civilians at the whole area of a city, making a huge amount of bots in big cities.
The new variant divides the map into 100 meter grids, and only activates grids where players are present, plus the adjacent grids. It makes possible population of urban areas of any size.

GOAP AI improvements
This project started and is going on partially due to interest in video game AI topics.
The chosen AI architecture relies on an action planner which generates action planes for given goals. This planning is very heavy, and generation of a plan of several actions can take some milliseconds of time or more, which makes it unusable for group or unit level AI. So far we used the planner only for garrison level AI, where it doesn't need to run very often.
But not any more. We have implemented a cache for the planner, which finally lets us fully use GOAP AI for individual units and groups, and now the planning phase takes no time.
As a good side effect, now civilians and military units use the same AI logic, which means that whatever improvement we make for one human AI type, all others can use that too.
For instance, the civilians can now use benches and other ambient animations (soldiers have been doing these for a few releases already), and military AIs can have dialogues with player. The newly created logic for vehicle avoidance is also same for civilians and military units.
Here are some demos of what it looks like:

Civilians using ambient animations:
unknown.png

Bots avoiding being driven over by vehicles:

 


New dialogue framework
There wasn't much of a dialogue framework before, but now there is one which lets us create new dialogues quite easy, with options and branches. Since now AI of all human characters in the mission is unified, we can have a dialogue with all kinds of bots: police, military, civilians - everyone.
Some demos of dialogue options and possible interactions with bots:

 

 

  • Like 5
  • Thanks 2

Share this post


Link to post
Share on other sites
On 1/9/2020 at 8:52 PM, Sparker said:

Technical description

 

...

Almost all code is written in my OOP own implementation for SQF, OOP-Light. I think this is the first mission of such class written entirely in OOP, correct me if I am wrong. In a few words, the OOP macros create namespaces for individual objects in missionNamespace, by concatenating object reference and variable name in form: objName_varName. It supports basic OOP features such as classes, methods, static members, inheritence. There are more advanced features, like member attributes accessible at run time, a lot of run-time assertions (wrong class names, null-objects, wrong class member names), which can be disabled to release build, public object creation.

 

Benefit of OOP has been huge. First of all it has allowed us write code by operating with data structures, which happens naturally a lot, whatever kind of component is being written. We were able to organize the code base properly. Class inheritence was hugely benefitial for AI OOP classes (more about them later) and for UI OOP classes. Finally, member variable attributes have let me do automated (de)serialization of objects for transmission across network and for storage of saved games. Although, even with these macros, it is still SQF with all its disadvantages. Looking back, I think I should have gone with Intercept or a similar thing, because IDE support of code base matters a lot for such a big project.

...

 

 

Does anyone have links on any tutorials or such?

 

 

On 1/9/2020 at 8:52 PM, Sparker said:

Technical description

 

...

Looking back, I think I should have gone with Intercept or a similar thing, because IDE support of code base matters a lot for such a big project.

...


Since intercept skips the SQF - how compatible is the code on this and do you think that you will slowly phase out or recommend others use intercept?  I opened the source files & kind of noping to it - but curious how important you feel it is now?

Share this post


Link to post
Share on other sites

Hi! If you would like to try OOP, best place to start with is this:

After that you should upgrade OOP_Light to the one from Vindicta because it is much superior. We can also talk on Discord about OOP usage if you want.

 

Quote

Since intercept skips the SQF - how compatible is the code on this and do you think that you will slowly phase out or recommend others use intercept?  I opened the source files & kind of noping to it - but curious how important you feel it is now?

Do you mean 'How is vindicta code compatible with Intercept'? Well, it's made with OOP and class hierarchy is good, so it should be possible to port it to C++ with Intercept in theory, but we are not going to do that at this point. Probably if I started this project at this point, I would rather write it with Intercept entirely, or some most critical parts of it. I wouldn't recommend to implement anything like this project in SQF, even with the OOP framework we have developed.

  • Like 2

Share this post


Link to post
Share on other sites

Since latest development branch it's possible to add factions to Vindicta as separate addons.
Information about that can be found here:
https://github.com/Vindicta-Team/External-Faction-Example/
It opens possibility to add some factions with non-standard setting (or for any other reason) without the need to constantly upgrade mission code.

  • Like 1

Share this post


Link to post
Share on other sites
32 minutes ago, Sparker said:

Hi! If you would like to try OOP, best place to start ...

> Will do - I see some example being linked there!
 

After that you should upgrade OOP_Light to the one from Vindicta ...

>  ... not sure what you mean when you say upgrade to Vindicta version of OOP_Light? ...  Is this a second library not documented somewhere? 

I even saw in the Vindicta project  ...


// Path:  Vindicata > SRC > common.h 

// OOP_Light.h

#include "OOP_Light\OOP_Light.h"


 because it is much superior. We can also talk on Discord about OOP usage if you want.

>  Ty ... I'm going to take some time to look over some stuff & maybe try a shot or two first.
 

 

Share this post


Link to post
Share on other sites

0.46.0 is released on GitHub and Steam Workshop

 

The mission has been moved to our new Steam account:
https://steamcommunity.com/sharedfiles/filedetails/?id=2185874952
Previous main branch release at Workshop will remain but will not be updated.

 

Previous saved games are not compatible due to multiple gameplay changes.

 

Most likely this is our last major release.

At current state of development (and currently we have 4.5 megabytes of SQF code and 300+ SQF-OOP classes) it is apparent that the available programming language and tools are completely unsuitable for such project.
Following releases, if they will happen, will be dedicated to error/crash fixes or minor changes.

 

Change log

 

# New features:
- Enemies can use attack helicopters
- Big changes to city relations, recruitment, and external reinforcement for enemy commander. Now both sides can only get new soldiers by recruiting them from cities.
- Campaign progress and enemy aggression level are now separate values
- Enhanced map UI, showing brief overview of forces at locations and city influence
- Friendly AI can be equipped with headgear and vests
- Rewritten civilian presence, which is now better optimized for large cities
- Lots of changes to unit-level AI
- New dialogue framework, more options for civilian and police dialogues
- Mission can be run without ACE Medical system now. In that case standard Arma revive system is activated.
- Construction resources can be obtained by talking to civilians
- More ways to get intel about planned enemy actions
- More options (in Addon Options menu): civilian density, AI-to-AI and AI-to-player spawn distance, Loot amount, etc.
- Abandoned vehicles are deleted after being away from players for several hours

 

# Tweaks
- Adjustments to factions by contributors
- Adjustments to maps
- Tweaks in undercover system
- In-game tutorial is removed, now it points at guide web page
- Bots will no longer stick to roads if they have no vehicles

 

# Maps
- Added Takistan map by Jasperdoit

 

# Technical
- Saved games can be saved into separate files if FileXT extension is loaded
- Faction specifications can be added as external addons (previously it had to be in mission folder), making it easier to develop and maintain 3rd party factions for Vindicta.
- Various performance optimizations related to code scheduling
- Redone project file structure and build scripts:
    - NodeJS is no longer needed to build mission files
    - Now it is much easier to add new maps
- For server owners: server.cfg missions class entries have same name now, independent of version. An example server.cfg is autogenerated and can be found in mod folder.

 

# Fixes
- Fixed: Init screen appearing for everyone when someone (re)joins
- More robust code to prevent vehicle dissappearing while being driven by players
- Lots of other minor fixes

  • Like 4
  • Thanks 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×