ambiguousname / jackbox-custom-content

Makes (some) custom content/mods for Jackbox Party Pack 7
13 stars 0 forks source link

What is this?

It's a program for adding your own content (stuff like prompts, certain sound files, etc.) to the Jackbox Party Pack 7.

WARNING: I've really only tested this on Windows, it might not work on other operating systems.

You may also want to keep a backup of the Jackbox Party Pack 7's files if you're not using Steam, otherwise you're going to have to uninstall and reinstall your entire game if something goes wrong.

Some screenshots of custom content in the Jackbox Party Pack 7:

Talking Points Quiplash3

Check out the video demo.

Install instructions

If you're running on Windows:

Otherwise:

To add the sample custom content:

Before installing, the sample custom content does contain some adult... jokes (I wrote them very late in the evening, the level of comedy will vary significantly)? So be warned if you want to import it.

Just so you know, the sample custom content is meant to be played with other content in the mix (there isn't enough sample custom content to last a full game with 8 players). While you can use the "Only Custom" menu option to get rid of the game's own content files and play with only the sample content, it's not recommended.

Common things to watch out for:

Tags

The \<BLANK> tag is used in prompts to signify a fill in the blank question. Like with My <BLANK> is too big!.

The \<ANYPLAYER> tag is used to signify that this prompt uses the name of some random player in the game, like with Hey, <ANYPLAYER> has a problem of too much <BLANK>.. To use the \<ANYPLAYER> tag, you should also check the checkbox that says "Includes Player Name", otherwise the \<ANYPLAYER> tag won't work.

Custom Files

You'll often see a "Browse" button for some games, which allows you to add your own custom files (like .OGG or .JPG files) for the game. These are entirely optional, but if you're going to make a custom file, please save your custom files into a folder called "external content" located in the same file as jppc.py or Jackbox Content Custom.exe. This way, if you're going to share your content with someone else, the software will recognize that you want this content to be shared with other people. Just make sure to share both "custom_content.json" and the "external content" folder (and make sure they're in the same location).

If you're confused about anything else, please read this Readme. Please.

Features

Editing content

If you want to change specific parts of your content or delete content, you're going to want to edit that content in the View/Edit Content option. You should note that you can select multiple pieces of content to edit, view, or delete.

The "Make New Content" Button

If you've made changes to content, but you want to save those changes to a new piece of content (rather than editing the existing piece of content), push this button to make your changes into a new piece of content.

Importing content and/or Sharing Content

If you copy the external_content.json file that appears in the same folder as jppc.py or Jackbox Party Pack Custom.exe and send those files to someone else, they can then import that content, using the "Import/Reimport Content" option.

The import content feature will only import certain custom files like .JPGs or .OGGs if those files are stored in the folder ./external content/, if that folder is in the same location as jppc.py or Jackbox Party Pack Custom.exe.

Additionally, you may have to edit imported content for Champ'd Up, since certain prompts are connected to other prompts with specific IDs, which may be changed on import.

Using only custom content in a game

This is not at all recommended. If you have less than a certain amount of content for the game to pull from, the game will not continue. It's better to mix in your custom content with the existing content. If you still want to only use custom content for your game, you can use the "Only Use Custom Content" option from the main menu to delete all existing game content.

This option isn't recommended for any game unless that game has at least the number of content described here:

Potential Questions/Problems

Doesn't Quiplash 3 already have a way for you to make your own questions?

Yes, but there are a few differences. For one: making your own "episodes" in Quiplash 3 means you have to manually select them. If you add custom questions using this program, they'll get inserted into the normal rotation of questions. For two: using this program will allow you to add more stuff not available in Quiplash 3's "episodes" feature, like audio files to read the questions and custom responses to certain answers. And this program can be used for more games than Quiplash 3.

I accidentally added content multiple times, can I remove it?

There's a delete option in "View/Edit Content". You can select multiple pieces of content to delete.

HELP, EVERYTHING IS BROKEN AND/OR I REMOVED ALL NON-CUSTOM CONTENT AND CAN'T GET IT BACK

If you're using Steam, go to the Jackbox Party Pack 7 in your Steam Library. Right click on the game's icon or name, click "Properties". In the popup window, click on "Local Files". Then click "Verify integrity of game files..." That should fix everything.

Important note if you've clicked "verify integrity of game files..."

That means all your custom prompts have been removed from the game. To get your custom prompts back, you'll have to follow a couple of steps.

  1. Use the "Import/Reimport" option available in the menu
  2. Select "custom_content.json" from the file browser.
  3. Import.

EVERYTHING'S STILL BROKEN

Uninstall and reinstall the Jackbox Party Pack 7

NOPE, IT STILL DOESN'T WORK

Delete everything from your Jackbox Party Pack 7/games folder, then find the "Verify integrity of game files..." button and click it.

The .EXE file is way too slow

If the .EXE is too slow for you, you can just follow the steps for cloning the repository and using the .PY file.

I don't have Windows, and I don't want to install Python

As of right now, you're just going to have to install Python and install jppc.py on your OS of choice. I'm using PyInstaller to compile my code, and PyInstaller is not able to cross-compile.

Why does this program sometimes use weird names for each game/content?

I have here a handy conversion for the games and their weird names:

The program does this because that's what the folders for each game are called.

Why isn't Devils and the Details included on that list?

An excellent question. For now, I'm not going to bother supporting custom Devils and the Details content for a few reasons:

  1. The Devils and the Details' game files have a different file structure compared to every other game in the party pack, meaning it would be harder for me to add support
  2. Those game files use a language called "EVERYDASIC" (similar to BASIC, ha ha, get it?), which I'm going to have to deconstruct and fiddle around with if I want to add support.
  3. I don't think the game is that great anyway, and so all that effort for Devils and the Details doesn't seem worth it.

Custom content guides

Making custom content for Blather Round

Blather 'Round is one of the most customizable games for the Jackbox Party Pack 7. As such, it has a lot of confusing content options. Here's a description of what each content means, along with some descriptions for the options:

Word

The word that the player is trying to guess.

Word/Phrase Category

The category to describe the word/phrase. Default options are person, place, thing, or story. If you want to add your own broad category, see Category.

Subcategory

You can put anything you want here. Just add one word that adds a little bit more detail than the previous category (e.g., tv for Yu Gi Oh!, athlete for LeBron James, animal for Walrus). You should use an existing subcategory (See the wiki). If you're going to make up your own subcategory, please see Descriptor for making your own descriptive sentences.

Difficulty

I'm pretty sure you can put whatever you want, but it's recommended to put easy for things that are fairly common knowledge (e.g., Australia, Office Space), medium for things that require more specific knowledge (e.g., Walrus, Marianas Trench, Les Mis), and hard for things that require very specific knowledge (e.g., Diff'rent Strokes, Mr. Snuffleupagus)

Forbidden Words

Hardly ever used, but if you have some common words that occur in your word/phrase or some really good descriptors (Like murder in Murder She Wrote or big and dude in Big Lebowsky), then you should put in those words here.

Tailored Words

Words that are tailor made to more accurately describe the word/phrase. First describe the descriptor (put into brackets: \<descriptor>), then the specific word (separate by |, so: <descriptor>|word). What are the categories/words? Well, you can make your own in the Descriptor menu. If you want to use pre-existing words, search the wiki. You should see each descriptor (listed under name), along with a list of words to match that descriptor (for instance, if I had Pompeii, I would write <emotion-bad>|sad|<building>|structure|<land>|land|<texture-complex>|firey|<abstract-concept>|tourism|<building-complex>|ruin, etc.)

Category

A broad category meant to describe the general idea of a word (ideally person/place/thing/story work well, so making a new category isn't recommended)

Structures

The sentence structures used to give hints about what the thing is about. Use \<descriptor> tags (e.g., \<emotion-bad>, \<building>) for each thing you have to fill in the blank for (again, go to the wiki to see the words you can use, or add your own with Descriptor). Separate each entry by |.

Descriptor

You have three options: Describing Adjectives/Nouns/Verbs to apply to a category, sentences to respond to other people's guesses (like It's very similar to ____!), or descriptor words meant for \<descriptor> tags (to be used in the Tailored Words section for a Word). The steps for making each are similar.

Descriptor name

How you name the descriptor will (I think) determine how that descriptor is used.

Making custom responses to specific text for Quiplash 3:

So, you may notice that in Quiplash 3 the announcer will sometimes react to a specific prompt. You can do this too!

This only works for Round 1 and 2 questions. You can't have custom responses for Final Round questions.

Let's say you have a prompt like:

Oh no, my dog ate my <BLANK>!

And you want a specific response if someone says "homework".

In the "What to filter field", you'd put:

<PRONOUN> Homework|<PROUNOUN> homework|hw|<PRONOUN> hw

You should already know that Jackbox uses tags like \<ANYPLAYER> and \<BLANK> for questions, and so for their responses to specific answers, they use the tags \<ARTICLE> (Like "the", "a", "an", "a massive", "a lot of", etc.), \<PRONOUN> (Like "I", "My", "His", "Her", "I've got", "this", "that", etc.), and <VERB> (Like "having a", "craving a", "needing a", "downing a", "guzzling"). To see what kinds of answers tags like \<ARTICLE> will give, check the wiki. You should also separate possible answers by a "|" sign.

You should also try to anticipate alternate answers, like abbreviations or misspellings. Let's look at another example.

For the question "What skin tags probably taste like", Jackbox has: <ARTICLE> chicken | chicken|<ARTICLE> chiken | chiken|<ARTICLE> chikin | chikin as a filter, trying to detect things like "A chicken", "chicken", "A chiken", "chiken", etc.

Note the spaces in between the "|" signs in the example above. It's just a formatting thing, I don't think it really matters. You can add spaces only if you want to.

Once you've added the filtering, then you can add your response audio as a .ogg file. Jackbox also requires a transcript of your response (I think for captioning purposes), so you should write out what you've said in the "Transcript of your response: " field.