Skip to content

A repository for Pip-Boy 3000 Mk V apps & games created by the community, and hosted on Pip-Boy.com

License

Notifications You must be signed in to change notification settings

CodyTolene/pip-apps

Repository files navigation

Pip-Apps

A common repository to house all the great apps and games made by fellow vault-dwellers for the Pip-Boy 3000 Mk V device. Apps are hosted on pip-boy.com and are open-source for all to enjoy.

Purchase the device from the Bethesda store here. View the official upgrade site here.

Index

Website

Pip-Boy.com

Just here to have some fun? Head over to the Apps Inventory and start playing right from your Pip-Boy’s interface, no fuss, no power armor required. Otherwise you can install manually using this repository, follow that guide here to get started.

Feeling like a Vault-Tec engineer? If you’re interested in developing your own holotape-style apps, follow the development guide below to get started. Thanks for being part of the Wasteland's growing arcade!

[ Index ]

Playing the Apps/Games

Website

You can install and play apps directly from https://pip-boy.com/. Just connect to your PC using the website and start playing!

Info Games will be available under the INV > APPS tabs on your Pip-Boy device once uploaded.

[ Index ]

Manual Installation

To manually install the apps, you have a few options:

  1. Download the latest apps.zip archive from the latest build and extract the contents to the root of the SD card. You can use the Zip upload tool here: https://pip-boy.com/data/maintenance. This is the easiest option and doesn't require you to remove the SD card.

  2. Copy the entire USER folder from this repository over to the root of the SD card. This will overwrite any existing apps and settings. This requires you to remove the SD card though, so probably not the best option.

  3. Use the development process below, which is meant for rapidly testing apps and features. This requires a bit of setup but is the most flexible option.

[ Index ]

Development

Prerequisites

To get started with development, you will need the following:

[ Index ]

Setup

To get set up for development, follow these steps:

  1. Clone the repository.

  2. Run npm install in a new terminal at the root of this project, to install the project dependencies.

  3. Run npm install -g espruino to install the Espruino CLI globally for communicating with your device.

[ Index ]

App Loader

Once you have the project and dependencies set up locally, you can start the app loader to test your apps and games. To do this, follow these steps:

  1. Run npm run start to start the loader app. This is the app you will use to rapidly upload and test your app.

  2. Open a browser and navigate to http://localhost:3000 if it doesn't open automatically.

  3. From here you can connect and upload your app files for quick testing.

Info The loader app is also available via GitHub pages here https://codytolene.github.io/pip-apps

[ Index ]

Learning app development

Interested in learning how to develop apps for the Pip-Boy 3000 Mk V? Check out the excellent RobCo Industries Documentation for everything you need to get started.

Special thanks to @rikkuness for the hard work in providing and maintaining this amazing resource!

[ Index ]

Creating a New App/Game

To create a new app/game, follow these steps:

  1. Create a new js file using pascal casing (ie MyGame.js) in the USER folder. This will be the entry point for your app.

  2. Test by using the upload tool in the app loader.

  3. Update the USER/_registry.json file with the new app information. This meta will be used on the website to help users and possibly on the Pip-Boy at a later date.

    [
      ...
    + {
    +      "author": "My name...",
    +      "dependencies": ["MyAppName"],
    +      "description": "My app description...",
    +      "homepage": "",
    +      "id": "MyAppName",
    +      "instructions": "My app instructions & controls...",
    +      "name": "My App Name",
    +      "tip": "",
    +      "type": "APP",
    +      "version": "1.0.0"
    + }
    ]
    Key Description
    author Your name or handle.
    dependencies The array of folder names for any assets your app uses.
    description A brief description of your app.
    homepage A link to your website or social media, can be empty.
    id A unique app id that also should match the .js file name.
    instructions Instructions and controls for your app.
    name The name of your app.
    tip A tip or trick for your app, can be empty.
    type The type of app, either "APP" or "GAME".
    version The version of your app.
  4. Add your code using Git and push to a new branch.

  5. Open a pull request to the main branch.

  6. Wait for the pull request to be reviewed and merged.

Thank you for any and all contributions!

[ Index ]

Directory Structure

.
├─ .github                     # GitHub configuration files.
├─ .husky                      # Husky configuration files.
├─ .vscode                     # VS Code configuration files.
├─ docs                        # The App Loader web app (GitHub Pages hosted)
├─ node_modules                # Node.js dependencies (ignored).
├─ USER                        # The directory for user created apps and games.
│  ├─ _registry.json           # The app registry file for user created apps.
│  ├─ <...>                    # Asset folders for user created apps.
│  └─ *.js                     # User created apps and games (entry file).
├─ .gitignore                  # Git ignore configuration file.
├─ .prettierignore             # Prettier ignore configuration file.
├─ LICENSE.md                  # The project license file.
├─ package-lock.json           # Node.js package lock file.
├─ package.json                # Node.js package file.
├─ prettier.config.cjs         # Prettier configuration file.
├─ README.md                   # The project README file.
└─ TERMS.md                    # The project terms of use file.

[ Index ]

License(s)

This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. See the license file for more information.

SPDX-License-Identifiers: CC-BY-NC-4.0

Warn By using this software, you acknowledge and agree to the terms of these licenses.

[ Index ]

Terms of Use

Bethesda Softworks, LLC. The Wand Company, all trademarks, logos, and brand names are the property of their respective owners. This project is for personal use only and is not intended for commercial purposes. Use of any materials is at your own risk.

Info For more information, see the full Terms of Use document.

[ Index ]

Wrapping Up

Thank you to Bethesda & The Wand Company for such a fun device to tinker with! If you have any questions, please let me know by opening an issue here.

Type Info
[email protected]
https://github.com/sponsors/CodyTolene
https://www.buymeacoffee.com/codytolene
bc1qfx3lvspkj0q077u3gnrnxqkqwyvcku2nml86wmudy7yf2u8edmqq0a5vnt

Fin. Happy programming friend!

Cody Tolene

About

A repository for Pip-Boy 3000 Mk V apps & games created by the community, and hosted on Pip-Boy.com

Topics

Resources

License

Stars

Watchers

Forks