Jump to content
oscarmolinadev

[WIP] Urban Patrol Modification

Recommended Posts



UPM Team is looking for a UI programmer. PM for more info.

Task:

Program all UI for UPM tools (Debug/Spectator)





Hey guys,

I would like to announce the creation of a new mod, Urban Patrol Modification. UPM is a mod for Arma 3 to Improve the control, behaviour and realism of AI.

GitHub Repo: https://github.com/upmod/UPM

Slack (Chatroom): https://upmod.slack.com/ || Slack Invitations HERE!

Roadmap:

aLexDGtl.jpg

More info:

UPM allows easy creation of randomly patrolling units using the principles of UPS created by Kronzky, only needs three basic steps:

  1. Put in your player's unit/group.
  2. Create a marker that covers the active area (this is where the AI will patrol).
  3. Place one or more enemy units (or groups) on the map that call the patrol script.
  4. And that's it...

Partly based scripts:

UPSMON Script

UPS Scricpt

Tools:

Coming soon...

UPM:

Coming soon...

Plan versions at present:

0.1 - Alpha Release

  • Coming soon...

FAQ:

  • MP or SP?
    UPM is oriented for Multiplayer COOP
  • Is it modular?
    For development? Yes. Most of code are separately in functions/pbo themes, it is a structure that allows you to program quickly and effectively to future changes including a new Arma 4 if applicable.

Team:

oscarmolinadev (Lead developer)

Cool=Azroul13 (Developer, UPSMON developer)

Edited by oscarmolinadev
Looking for & new roadmap

Share this post


Link to post
Share on other sites

Now this sounds interesting. Can you give a few ideas of what you would expect AI to do, once this mod is properly set up ?

Share this post


Link to post
Share on other sites
Now this sounds interesting. Can you give a few ideas of what you would expect AI to do, once this mod is properly set up ?

I have just completed the description :)

Share this post


Link to post
Share on other sites

Hi Oscar, I'm Monsada, the UPSMON autor and another catalonian programer like u.

I created UPSMON for arma 1 and I'm surprissed that UPSMON is still running and adapted in ARMA3.

We could take a beer in Figueres if u like ;), send me email if u come to figueres some day.

Congratulations and good luck,

Monsada

Share this post


Link to post
Share on other sites

One thing I'd really love to see along these lines is the AI either sprinting or scrambling for cover when a threat arrives that they have no possibility of countering. Example if armor arrives and there is either no AT soldier present, nearby or with ammo, the AI simply realise best bet is to hide and not engage at all.

Share this post


Link to post
Share on other sites
Hi Oscar, I'm Monsada, the UPSMON autor and another catalonian programer like u.

I created UPSMON for arma 1 and I'm surprissed that UPSMON is still running and adapted in ARMA3.

We could take a beer in Figueres if u like ;), send me email if u come to figueres some day.

Congratulations and good luck,

Monsada

Hi Monsada, I didn't know you were here :D I think it's the best way to control the AI with UPS and your modifications.

I sent you my skype for mp nd thank you very much for the support.

oscarmolinadev

Share this post


Link to post
Share on other sites

Looks interesting, always use UPSMON in my missions, such an easy to use and fairly powerful tool for smaller communities when using all the different commands and such in conjunction with each other.

What would this branch bring to the table? Just like optimisations, AI improvements or additional parameters to muck around with?

Looking forward to it ;)

Share this post


Link to post
Share on other sites
One thing I'd really love to see along these lines is the AI either sprinting or scrambling for cover when a threat arrives that they have no possibility of countering. Example if armor arrives and there is either no AT soldier present, nearby or with ammo, the AI simply realise best bet is to hide and not engage at all.

Hi froggyluv, at the moment I'm trying to implement a good code base to make an AI as realistic as possible. I'm basing UPS and UPSMON and hope to implement all its features.

If you want to help adding a feature, create issuse in github or post here and so i will consider.

Thanks for comment.

oscarmolinadev

---------- Post added at 15:14 ---------- Previous post was at 15:04 ----------

Looks interesting, always use UPSMON in my missions, such an easy to use and fairly powerful tool for smaller communities when using all the different commands and such in conjunction with each other.

What would this branch bring to the table? Just like optimisations, AI improvements or additional parameters to muck around with?

Looking forward to it ;)

The idea is that it can operate in both small and large communities. UPM will have the same principles of UPS / UPSMON using parameters. I'm working function by function to adapt and improve for Arma 3.

Share this post


Link to post
Share on other sites

Is there any chance of adding the ability to spawn in the units by a trigger? This would keep the units off the map until needed and save on performance resources.

Taking this one step further, having the units appears and disappear dependent on the player being in a certain area would make this perfect?

Regardless, looking forward to it...........

Share this post


Link to post
Share on other sites
Is there any chance of adding the ability to spawn in the units by a trigger? This would keep the units off the map until needed and save on performance resources.

Taking this one step further, having the units appears and disappear dependent on the player being in a certain area would make this perfect?

Regardless, looking forward to it...........

Spawn is partially done. Appears Units and disappear dependent on the player being in a certain area is one of the things that i have thought to implement. When core of UPM is finished and alpha is released, I have scheduled a phase optimization for this feature.

Share this post


Link to post
Share on other sites

Nice! It appears if you guys read my mind haha, only recently been working on ways to spawn UPSMON units on a trigger (using a number of scripts held together by mud) and praying to the heathen gods. Awesome to hear it being integrated within UPM.

You're fighting the good fight oscar, seriously hyped!

Share this post


Link to post
Share on other sites

If I remember correctly UPSMON currently do spawn. You can put this in a trigger:

_group = [player,side player,[b_G_Soldier_F], [], [], 0.5] call BIS_fnc_spawnGroup;

sleep 1;

nul = [_group,"yourmarkername","SPAWNED"] execVM "scripts\upsmon.sqf";

Use the parameter SPAWNED and others if you need.

Share this post


Link to post
Share on other sites

The easiest spawn I've seen is murkspawn.... Put the guys down as normal, very basic line in the group leaders init and synch it to the trigger ;)

Share this post


Link to post
Share on other sites

Of course you can spawn AI in UPSMON like OscarMolina show you. You can even save a group template and spawn whenever and wherever you want with a simple trigger and a command init in the template group :P

Share this post


Link to post
Share on other sites

Make spawn like murkspan isn't complicated, but the problem is performance. Why? Because all groups initialized at the beginning of mission and if there are many AI the performance slows down. Correct spawn is generating units by code but I understand your requests, simplifies work if you link the trigger and you include a parameter.

In UPM I thought make 2 solutions:

  • Possibility of linking a trigger to the unit that has the INIT function of UPM also adding the parameter - "SPAWNED"
  • Possibility to create units by code and send group to the INIT function of UPM located in the trigger also adding the parameter - "SPAWNED"

Share this post


Link to post
Share on other sites

As a big fan of UPSMON and Patrol Scripts in general, I'm curious about this project. :)

I do like the idea, already subbed to the topic and am looking forward to see you progress, but there are some things I would like you to clarify for me, please.

So basically, this is a written from the ground UPS/UPSMON (3.0) especially tailored for A3 or what is the reason/intention for this project to coexist beside UPSMON? What are the differences or will it be a 100% replacement of UPSMON plus extra features? And since Azroul13 is working on UPM, too, will the work on UPSMON be discontinued?

Also I would like to know, if you plan to implement more specific parameters for house patrolling like JW Custom did in his Ultra Simple Patrol Script?

And I can't remember at the moment how it is handled in UPSMON, but will UPM executing units/groups return back to patrol after combat situation? Would be cool to see them stay in combat mode for a few minutes after the last shots/enemy contact and then go back to business.

And my last question is, if there's the possibility to implement a command, that exits UPM for a unit/group, so the unit/group is "free" again and can get new/other instructions from the mission maker?

Thanks and regards!

Share this post


Link to post
Share on other sites
So basically, this is a written from the ground UPS/UPSMON (3.0) especially tailored for A3 or what is the reason/intention for this project to coexist beside UPSMON? What are the differences or will it be a 100% replacement of UPSMON plus extra features? And since Azroul13 is working on UPM, too, will the work on UPSMON be discontinued?

UPM is based on the components of the last UPSMON version (6.0.9).

I will still work on UPSMON ;) .

And I can't remember at the moment how it is handled in UPSMON, but will UPM executing units/groups return back to patrol after combat situation? Would be cool to see them stay in combat mode for a few minutes after the last shots/enemy contact and then go back to business.

It does already that.

And my last question is, if there's the possibility to implement a command, that exits UPM for a unit/group, so the unit/group is "free" again and can get new/other instructions from the mission maker?

Currently in the last UPSMON published version 6.0.8.

Edited by Cool=Azroul13

Share this post


Link to post
Share on other sites
As a big fan of UPSMON and Patrol Scripts in general, I'm curious about this project. :)

I do like the idea, already subbed to the topic and am looking forward to see you progress, but there are some things I would like you to clarify for me, please.

So basically, this is a written from the ground UPS/UPSMON (3.0) especially tailored for A3 or what is the reason/intention for this project to coexist beside UPSMON? What are the differences or will it be a 100% replacement of UPSMON plus extra features? And since Azroul13 is working on UPM, too, will the work on UPSMON be discontinued?

Also I would like to know, if you plan to implement more specific parameters for house patrolling like JW Custom did in his Ultra Simple Patrol Script?

And I can't remember at the moment how it is handled in UPSMON, but will UPM executing units/groups return back to patrol after combat situation? Would be cool to see them stay in combat mode for a few minutes after the last shots/enemy contact and then go back to business.

And my last question is, if there's the possibility to implement a command, that exits UPM for a unit/group, so the unit/group is "free" again and can get new/other instructions from the mission maker?

Thanks and regards!

The main difference is that it is not necessary put all files in the mission every time and the structure of the code is different.

I'm mainly basing on UPSMON 6.0.9. We're helping each other. UPM will have most of the characteristics of UPSMON and some are improved, others will replace them. Normally if i improve or change something i mention to Azroul13 and if he likes, he implements in UPSMON or vice versa. He has already answered it will continue working on it.

I've looked USPS and currently UPSMON also used most of the parameters used USPS. The parameters that don't use if it does internally. Also once I finish the UPM base can study the feature :)

oscarmolinadev

Share this post


Link to post
Share on other sites

for spawning units using upsmon u need to call the mon_spawn function

nul = [[b]TEMPLATE,POSITION,UNITS[/b],[mark, upsmon optional params]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";

1. First u need a template squad, create a squad in editor and run upsmon on init setting the TEMPLATE parameter:

nul = [this,"town","TEMPLATE:",1] execVM "scripts\upsmon.sqf";    

This will set this squad with template id 1 with the patrol area of the mark named "town"

2. Now u can spawn squad template 1 where u need, comonly used in triggers, calling the upsmon spawn function:

nul = [TEMPLATE,POSITION,UNITS,[mark, upsmon optional params]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";

nul = [1,position player,2,["town2","respawn"]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";

This will spawn 2 copies of template 1 squad on player position, this squad patrol area is mark name town2.

note:

spawned parameter on upsmon will not spawn any soldier! is only must be used when creating units at runtime that use upsmon.

spawned = use only with squads created in runtime, this feature will add squad to UPSMON correctly.

For more details and examples with upsmon s see wiki

https://dev.withsix.com/projects/upsmon/wiki/MON_spawn

https://dev.withsix.com/projects/upsmon/wiki/UPSMONsqf

Share this post


Link to post
Share on other sites

I change the name of the file :o

/****************************************************************

File: UPSMON_spawn.sqf

Author: Monsada

Description:

The script will spawn a squad based on a template.

Called by the mission creator:

nul = [1,[0,0,0],3,[mark, upsmon optional params]] EXECVM "SCRIPTS\UPSMON\MODULES\UPSMON_SPAWN.SQF";

Parameter(s):

<--- Id of the template to copy.

<--- Position to create new squad.

<--- Number of squads to create

<--- Array of parameters of UPSMON, first must be name of marker to patrol

Returns:

nothing

****************************************************************/

And all new commands are explained on the pdf.

Share this post


Link to post
Share on other sites

Great Project oscarmolina and thank you for working on this! (of course also a big thanks to cool=azroul13 and monsada)

As you are implementing UPSMON as an addon, I would like to know, if you will structure it to be compatible with a headless client?

All the best and keep it up!

Share this post


Link to post
Share on other sites
Great Project oscarmolina and thank you for working on this! (of course also a big thanks to cool=azroul13 and monsada)

As you are implementing UPSMON as an addon, I would like to know, if you will structure it to be compatible with a headless client?

All the best and keep it up!

yes :) I have scheduled a task to improve the performance and I plan to add support for headless client. UPM is oriented MP Coop. I confess i'm a little lost on this topic but I am looking information to implement of the best way possible. If anyone understands headless client in Arma 3 I would appreciate your help with information or a sample mission :)

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

×