Jump to content
Nichols

Anyone used or setup Papers Please before?

Recommended Posts

Trying to setup this mod (https://steamcommunity.com/sharedfiles/filedetails/?id=1249483448) in a mission setting and want to find a way to get it done. The documentation is more than a little lacking in how to make it work. I am guessing it works via triggers but since there is not a lot of info on it or in the documentation.txt file within the mod there is basically no clue on how to setup the mod.

 

I appreciate the help.

Share this post


Link to post
Share on other sites

The description on the workshop page is fairly complete:

 

Quote

This addon adds several document items that can be shown to units through ACE3 interaction.

 

A unit with any of this mod's documents in its inventory can show or give those documents to another unit via ACE interaction (Interactions > Documents > [document type] > Give/Show). There are seven different documents available - three passports and four permits.

 

There is a text document in the mod folder with classnames, as well as explanations and examples of associated functions and CBA events.

Share this post


Link to post
Share on other sites

BTW, I find this mod to be possibly useful to me, so I'm down to figure out full mission implementation. How exactly do you want to use it? MP? SP? COOP PvE?

Share this post


Link to post
Share on other sites

What I mean by documentation is a viable readme file with some simple instructions of how to setup the functions. I have the actual documents already setup for my civilians and the various factions. So that part was not a problem to get squared away. The problem for me is understanding how to get it to work overall and how to set it up with checkpoints and certain zones. 

 

I am attempting to figure out how to use it in a MP COOP session where we are playing as both IDAP and a security force for the IDAP personnel. The AI is also operating as BLUFOR and Syndikat is the insurgents.

Share this post


Link to post
Share on other sites

Well, here's the documentation.txt found inside the mod folder:

 

Spoiler
Quote

Classnames:
    PapersPlease_PermitGeneric
    PapersPlease_PermitEntry
    PapersPlease_PermitWeapons
    PapersPlease_PermitVehicle

    PapersPlease_PassportCivilian
    PapersPlease_PassportDiplomat
    PapersPlease_PassportMilitary

Functions:
----------------------------------------------------------------------------
Function: PapersPlease_fnc_documents

Description:
    Gets a list of all documents a unit has
  
Parameters:
    _unit - The unit to check [Unit]
    
Returns:
    List of documents the unit has [Array of strings]

Example:
    _documents = player call PapersPlease_fnc_documents;
    
    _allowEntry = ("PapersPlease_PermitEntry" in _documents);
----------------------------------------------------------------------------
Function: PapersPlease_fnc_giveDocument

Description:
    Forces the _unit to give _document to _target if possible
    
    *_unit and _target must be < 5m apart
    *_document must be in items _unit
  
Parameters:
    _target - The unit receiving the document [Unit]
    _unit - The unit giving the document [Unit]
    _document - Classname of the document [String]
    
Returns:
    Success [Boolean]

Example:
    [_unit, player, "PapersPlease_PermitEntry"] call PapersPlease_fnc_giveDocument
----------------------------------------------------------------------------
Function: PapersPlease_fnc_showDocument

Description:
    Forces the _unit to show _document to _target if possible
    
    *_unit and _target must be < 5m apart
    *_document must be in items _unit
  
Parameters:
    _target - The unit being show the document [Unit]
    _unit - The unit showing the document [Unit]
    _document - Classname of the document [String]
    
Returns:
    Success [Boolean]

Example:
    [_unit, player, "PapersPlease_PermitEntry"] call PapersPlease_fnc_showDocument
----------------------------------------------------------------------------

CBA Events:
----------------------------------------------------------------------------
Event Name: PapersPlease_shownDocument

Description:
    Thrown when a unit shows another unit papers successfully

Locality:
    Global

Arguments:
    _target - The unit being show the document [Unit]
    _unit - The unit showing the document [Unit]
    _document - Classname of the document [String]
----------------------------------------------------------------------------
Event Name: PapersPlease_givenDocument

Description:
    Thrown when a unit gives another unit papers successfully

Locality:
    Global

Arguments:
    _target - The unit being given the document [Unit]
    _unit - The unit giving the document [Unit]
    _document - Classname of the document [String]
----------------------------------------------------------------------------

 

 

Again, how exactly do you want to use it? Who will have the documents and who will be checking them? What do you want to happen when the documents are checked? Etc.

Share this post


Link to post
Share on other sites

I already have the documents setup on every player slot and AI that will spawn in the mission; BUT there is absolutely nothing that tells me HOW to set it up. If I want to have a a guard at a checkpoint ask for your papers when and how does that AI guard know when to ask that of the AI or players that enter the area?. I can't make a decision on what I want to happen until and unless I know HOW to setup the functionality of the mod. Otherwise its just extra inventory that honestly does diddly squat for the mission design.

 

When a .txt file only shows what the functions, parameters, returns and examples are that really does not tell me what I need to do to make it work or what steps to take when it doesn't work.

 

Spoiler

Classnames:
    PapersPlease_PermitGeneric
    PapersPlease_PermitEntry
    PapersPlease_PermitWeapons
    PapersPlease_PermitVehicle

    PapersPlease_PassportCivilian
    PapersPlease_PassportDiplomat
    PapersPlease_PassportMilitary

Functions:
----------------------------------------------------------------------------
Function: PapersPlease_fnc_documents

Description:
    Gets a list of all documents a unit has
  
Parameters:
    _unit - The unit to check [Unit]
    
Returns:
    List of documents the unit has [Array of strings]

Example:
    _documents = player call PapersPlease_fnc_documents;
    
    _allowEntry = ("PapersPlease_PermitEntry" in _documents);
----------------------------------------------------------------------------
Function: PapersPlease_fnc_giveDocument

Description:
    Forces the _unit to give _document to _target if possible
    
    *_unit and _target must be < 5m apart
    *_document must be in items _unit
  
Parameters:
    _target - The unit receiving the document [Unit]
    _unit - The unit giving the document [Unit]
    _document - Classname of the document [String]
    
Returns:
    Success [Boolean]

Example:
    [_unit, player, "PapersPlease_PermitEntry"] call PapersPlease_fnc_giveDocument
----------------------------------------------------------------------------
Function: PapersPlease_fnc_showDocument

Description:
    Forces the _unit to show _document to _target if possible
    
    *_unit and _target must be < 5m apart
    *_document must be in items _unit
  
Parameters:
    _target - The unit being show the document [Unit]
    _unit - The unit showing the document [Unit]
    _document - Classname of the document [String]
    
Returns:
    Success [Boolean]

Example:
    [_unit, player, "PapersPlease_PermitEntry"] call PapersPlease_fnc_showDocument
----------------------------------------------------------------------------

CBA Events:
----------------------------------------------------------------------------
Event Name: PapersPlease_shownDocument

Description:
    Thrown when a unit shows another unit papers successfully

Locality:
    Global

Arguments:
    _target - The unit being show the document [Unit]
    _unit - The unit showing the document [Unit]
    _document - Classname of the document [String]
----------------------------------------------------------------------------
Event Name: PapersPlease_givenDocument

Description:
    Thrown when a unit gives another unit papers successfully

Locality:
    Global

Arguments:
    _target - The unit being given the document [Unit]
    _unit - The unit giving the document [Unit]
    _document - Classname of the document [String]
----------------------------------------------------------------------------

 

I just need to know HOW to setup the mod so I can get the functionality that I want to happen or attempt to have happen.

 

 

Share this post


Link to post
Share on other sites
1 hour ago, Nichols said:

<I want an AI guard to ask a player for their papers when they enter a certain area.>

 

Detect when a player enters an area. Many ways to do this, trigger is one.

 

When player is detected in area, pop up a text or dialog (depending on how complicated you want to get) asking for their documents.

 

Show/give documents. This can be done in a few ways, from most to least immersive:

  • Wait for the player to use ACE interaction to show/give documents, use appropriate CBA event to detect success/fail
  • Force the show/give using the appropriate PP function (returns success/fail)
  • Scan player's documents and succeed/fail them based on results

I'll see if I can work up an example mission tonight.

Share this post


Link to post
Share on other sites

That would be great and I really do appreciate it. As I said the biggest issue I have is the serious lack of documentation on how to utilize the mod. My mind is running with possibilities but if I do not have some boundaries of what can or can't be done with it then the mind is completely stuffed full of ideas without a way to let them out...mainly because I can't code for anything since I left all that knowledge behind 25+ years ago.

Share this post


Link to post
Share on other sites

Well, the documentation is all there, you just have to know how to use it.

 

Here is a totally hacked together example mission:

https://www.dropbox.com/s/88d43e3e773scsw/papersPlease.VR.7z?dl=0

 

It's an MP mission, but not really tested in MP. You can spawn as one of three Syndikat units - one with the correct papers, one with the wrong papers, and one with no papers. 

 

Walk up to the NATO guard and you'll be immobilized and set facing him. He'll ask you for your papers, or turn you away if you have none. Using ACE interact (must have "Always display cursor for interaction" enabled as you are immobile) select Interactions > Documents > Document and you will either be turned away (wrong papers) or let through (correct papers).

 

Again, this is a total hack job, and I can't guarantee any MP compatibility, but it is a working example of using the mod's functions and CBA events.

Share this post


Link to post
Share on other sites

Thanks will take a look to see what I can do with it.

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

×