Files
bap-room-packager/readme.md
T

3.4 KiB

bap-room-packager

This is the guide for people who plan on working with or working on this program. Click here for a guide if you want to submit a room.

This program will take a collection of Bapalon rooms and automatically package them into BAP's directory format.

For a well developed example, see SOUP ROOMS.

Room Folder Setup

Each room folder must contain at minimum the following images. Every other file is optional.

  • ART
  • CREDIT
  • FLOOR
  • ROOF
  • WALL

If the following optional images are not included, they will be automatically filled in with a transparent png file.

  • MINI
  • INTERACT
  • LAYER

If the following optional audios are not included, they will be automatically filled in with a silent wav file.

  • FOOT
  • MUSIC

File Formats

Per BAP's readme file, here's a list of accepted file formats. Read BAP's readme file for engine limitations.

  • image
    • PNG
    • JPG
    • BMP
  • audio
    • WAV
    • MP3
    • OGG
    • MIDI

Room Settings

Each room's settings should be placed in a ROOM.ini (or ROOM.txt) file. Read BAP's readme file for more details about each setting.

The settings from each ROOM.ini file will be used to generate the final CF.ini file.

The following is an example ROOM.ini file. This is also the file's default settings, so any room with no ROOM.ini, or with missing settings from their ROOM.ini file, will use these values. Section titles ([example]) do not matter, they can be included or ommitted, the program searches all sections for all values.

size=1
speed=1
FOV=55
Texture_Repeat=3
Room_Height=350
Layer_Frames=1
Fog_Color=0
Fog_End=-1
Mini_speed=1

name=<empty string>
credits=<empty string>
links=<empty string>

Usage

You can view the help screen with bappackage -h:

Usage of bappackage:
  -basePath string
        path to your rooms collection (default "./rooms")
  -outPath string
        output path (default "./rooms_out")
  -roomPerNight int
        rooms per night (default 4)
  -splash1 int
        number of seconds splashscreen 1 will take (default 2)
  -splash2 int
        number of seconds splashscreen 2 will take (default 2)

The folder given by basePath will contain all of the room folders. For example the following folder structure:

rooms
├───room_one
│   ├───ART.png
│   ├───...
│   └───ROOM.ini
├───my_second_room
│   ├───ART.png
│   ├───...
│   └───ROOM.ini
└───third_room
    ├───ART.png
    ├───...
    └───ROOM.ini

The folder given by outPath can safely be the folder with BAP. This program will only touch the DATA/NIGHT_* folders, the CF.ini file, and a generated credits.txt in this folder.

roomPerNight is used for rooms that do not have an assigned night and room number.

Assigning Night and Room Numbers

The ROOM.ini file accpets 2 extra properties: night and room. This allows you to organize your room order manually. Any rooms without these properties will only be placed in nights after all manually assigned rooms.

Here is an example of the example ROOM.ini above but directly assigned to night 1 room 1.

night=1
room=1

size=1
speed=1
FOV=55
Texture_Repeat=3
Room_Height=350
Layer_Frames=1
Fog_Color=0
Fog_End=-1
Mini_speed=1

name=example
credits=zomo
links=https://example.com