Skip to content

Commit

Permalink
Merge pull request #1 from OpenIV-Team/v2.2-dev
Browse files Browse the repository at this point in the history
OIV Format v2.2
  • Loading branch information
GooD-NTS authored Oct 29, 2019
2 parents d6d9e76 + 0707069 commit 6f9d25a
Show file tree
Hide file tree
Showing 6 changed files with 762 additions and 42 deletions.
54 changes: 35 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,56 @@
# OpenIV Package Format – OIV
## Summary
The OpenIV Package (OIV Package) is an archive file for distribution of mods. OIV Package can be installed with OpenIV Package Installer tool. OIV Package is a [ZIP archive](https://en.wikipedia.org/wiki/Zip_(file_format)) with **.oiv** or **.zip** file extension. Usually, **.zip** is using while testing package and **.oiv** for distribution to users.

This comment has been minimized.

Copy link
@Vbaby90

Vbaby90 Mar 8, 2025

V-Baby1990

The OpenIV Package (OIV Package) is an archive file format for easy mod distribution. OIV Packages can be installed with OpenIV Package Installer tool. OIV Package Format is uses XML based script language for modifying game files.

There are two major version of OIV Package format:
* Version 2.1 (2.0)
* Version 1.1 (and 1.0)
OIV Package is a [ZIP archive](https://en.wikipedia.org/wiki/Zip_(file_format)) with **.oiv** or **.zip** file extension. Usually, **.zip** is used while development and testing and **.oiv** for published packages.

## Version 2.1 (*current version*)
Second generation of OIV packages. Main difference from the first generation, it can contain only one content block for only one game. Also, it have additional options for controlling appearance of Package Installer.
This GitHub repository is the starting point for OIV Package. Here you will find the information you need about the OIV Specification, simple examples of what it looks like, and some general information regarding the packages.

List of supported games:
## Current Version - 2.2 (*Second generation*)
The current version of the OIV Package specification is [OpenIV Package Format Specification 2.2](specification/versions/2.2.md).

### Previous Versions
This repository also contains specification for the previous versions of the OpenIV Package Format:
* [Version 2.1 Specification (*Second generation, deprecated*)](specification/versions/2.1.md)
* Version 2.0 Specification is not available.
* [Version 1.1 Specification (*First generation, deprecated*)](specification/versions/1.1.md)
* Version 1.0 Specification is not available.

Each folder in this repository, such as [examples](specification/examples), should contain folders pertaining to the current and previous versions of the specification.

## OIV Package Format Generations
Currently there are two generations of OIV Package Format:
* First generation (versions: 1.1, 1.0)
* Second generation (versions: 2.2, 2.1, 2.0)

### First Generation (*deprecated, latest version 1.1*)
First generation of OIV packages. Can have multiple contents for one or several games. This version support following games:
* Grand Theft Auto IV
* Episodes from Liberty City
* Max Payne 3
* Grand Theft Auto V

The only supported platform is Windows PC.
For Grand Theft Auto V, the “mods” folder also supported.

[Version 2.1 Specification](https://github.com/OpenIV-Team/OpenIV-PackageFormat/blob/master/specification/versions/2.1.md)
*This generation deprecated and will not evolve in future.*

## Version 1.1 (*deprecated*)
First generation of OIV packages. Can have multiple contents for one or several games. This version support following games:
### Second Generation (*current version 2.2*)
Second generation of OIV packages. Main difference from the first generation, it can contain only one content block for only one game. Also, it has additional options for controlling appearance of Package Installer.

List of supported games:
* Grand Theft Auto IV
* Episodes from Liberty City
* Max Payne 3
* Grand Theft Auto V

The only supported platform is Windows PC.
For Grand Theft Auto V, the “mods” folder also supported.

*This generation deprecated and will not evolve in future.*

[Version 1.1 Specification (*deprecated*)](https://github.com/OpenIV-Team/OpenIV-PackageFormat/blob/master/specification/versions/1.1.md)
## See It in Action
If you just want to see it work, check out the [list of current examples](specification/examples/v2.2).

## OpenIV Support
At the current moment latest version of OpenIV supports the following versions of OIV Package Format:
* Version 1.0
* Version 1.1
* Version 2.0
* Version 2.2
* Version 2.1
* Version 2.0
* Version 1.1
* Version 1.0
60 changes: 60 additions & 0 deletions additional-docs/openiv-supported-pso-gtav.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# OpenIV - GTA V (PC) - List of supported PSO files
This document contains a comprehensive list of PSO files (from PC version of GTA V) which currently supported for editing by the OpenIV.

## List of editable PSO files
**List updated:** OpenIV 3.2

| File name or extension | Root object | Support added in | Notes |
|--|--|--|--|
| | | **OpenIV 3.2** | |
| popgroups.ymt | CPopGroupList | OpenIV 3.2 | |
| gtxd.ymt | CMapParentTxds | OpenIV 3.2 | |
| peds.ymt | CPedModelInfo__InitDataList | OpenIV 3.2 | |
| credits.ymt | CCreditArray | OpenIV 3.2 | |
| playerspecialabilities.ymt | CPlayerSpecialAbilityManager | OpenIV 3.2 | |
| mapdatacullboxes.ymt | CIplCullBoxFile | OpenIV 3.2 | |
| carmodcols.ymt | CVehicleModColors | OpenIV 3.2 | |
| combattasks.ymt | CTuningFile | OpenIV 3.2 | |
| crimetasks.ymt | CTuningFile | OpenIV 3.2 | |
| defaulttasks.ymt | CTuningFile | OpenIV 3.2 | |
| dispatchtuning.ymt | CTuningFile | OpenIV 3.2 | |
| generalevents.ymt | CTuningFile | OpenIV 3.2 | |
| generaltasks.ymt | CTuningFile | OpenIV 3.2 | |
| iksolvers.ymt | CTuningFile | OpenIV 3.2 | |
| minimap.ymt | CTuningFile | OpenIV 3.2 | |
| motiontasks.ymt | CTuningFile | OpenIV 3.2 | |
| movementevents.ymt | CTuningFile | OpenIV 3.2 | |
| movementtasks.ymt | CTuningFile | OpenIV 3.2 | |
| pedtargetevaluator.ymt | CTuningFile | OpenIV 3.2 | |
| physicstasks.ymt | CTuningFile | OpenIV 3.2 | |
| playerinfo.ymt | CTuningFile | OpenIV 3.2 | |
| playertargetting.ymt | CTuningFile | OpenIV 3.2 | |
| randomevents.ymt | CTuningFile | OpenIV 3.2 | |
| reactionevents.ymt | CTuningFile | OpenIV 3.2 | |
| relationshiptuning.ymt | CTuningFile | OpenIV 3.2 | |
| responsetasks.ymt | CTuningFile | OpenIV 3.2 | |
| scenariotasks.ymt | CTuningFile | OpenIV 3.2 | |
| servicetasks.ymt | CTuningFile | OpenIV 3.2 | |
| shockingevents.ymt | CTuningFile | OpenIV 3.2 | |
| situationalclipsets.ymt | CTuningFile | OpenIV 3.2 | |
| soundevents.ymt | CTuningFile | OpenIV 3.2 | |
| tacticalanalysis.ymt | CTuningFile | OpenIV 3.2 | |
| vehicleaitasks.ymt | CTuningFile | OpenIV 3.2 | |
| vehicletasks.ymt | CTuningFile | OpenIV 3.2 | |
| wantedtuning.ymt | CTuningFile | OpenIV 3.2 | |
| weaponevents.ymt | CTuningFile | OpenIV 3.2 | |
| weapontasks.ymt | CTuningFile | OpenIV 3.2 | |
| wildlifemanager.ymt | CTuningFile | OpenIV 3.2 | |
| moviesubs.rpf\*.ymt | CMovieSubtitleContainer | OpenIV 3.2 | |
| | | **OpenIV 3.1** | |
| pedpersonality.ymt | CPedModelInfo__PersonalityDataList | OpenIV 3.1 | |
| | | **OpenIV 2.9.1** | |
| carvariations.ymt | CVehicleModelInfoVariation | OpenIV 2.9.1 | |
| vfxvehicleinfo.ymt | CVfxVehicleInfoMgr | OpenIV 2.9.1 | |
| | | **OpenIV 2.9** | |
| carcols.ymt | CVehicleModelInfoVarGlobal | OpenIV 2.9 | |
| levels.ymt | CLevelData | OpenIV 2.9 | |
| _manifest.ymf | CPackFileMetaData | OpenIV 2.9 | |
| *.ytyp | CMapTypes | OpenIV 2.9 | |
| *.ymap | CMapData | OpenIV 2.9 | |
| | | | |
52 changes: 33 additions & 19 deletions specification/README.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,54 @@
# OpenIV Package Format – OIV
## Summary
The OpenIV Package (OIV Package) is an archive file for distribution of mods. OIV Package can be installed with OpenIV Package Installer tool. OIV Package is a [ZIP archive](https://en.wikipedia.org/wiki/Zip_(file_format)) with **.oiv** or **.zip** file extension. Usually, **.zip** is using while testing package and **.oiv** for distribution to users.
The OpenIV Package (OIV Package) is an archive file format for easy mod distribution. OIV Packages can be installed with OpenIV Package Installer tool. OIV Package Format is uses XML based script language for modifying game files.

There are two major version of OIV Package format:
* Version 2.1 (2.0)
* Version 1.1 (and 1.0)
OIV Package is a [ZIP archive](https://en.wikipedia.org/wiki/Zip_(file_format)) with **.oiv** or **.zip** file extension. Usually, **.zip** is used while development and testing and **.oiv** for published packages.

## Version 2.1 (*current version*)
Second generation of OIV packages. Main difference from the first generation, it can contain only one content block for only one game. Also, it have additional options for controlling appearance of Package Installer.
## Current Version - 2.2 (*Second generation*)
The current version of the OIV Package specification is [OpenIV Package Format Specification 2.2](versions/2.2.md).

List of supported games:
### Previous Versions
This repository also contains specification for the previous versions of the OpenIV Package Format:
* [Version 2.1 Specification (*Second generation, deprecated*)](versions/2.1.md)
* Version 2.0 Specification is not available.
* [Version 1.1 Specification (*First generation, deprecated*)](versions/1.1.md)
* Version 1.0 Specification is not available.

Each folder in this repository, such as [examples](examples), should contain folders pertaining to the current and previous versions of the specification.

## OIV Package Format Generations
Currently there are two generations of OIV Package Format:
* First generation (versions: 1.1, 1.0)
* Second generation (versions: 2.2, 2.1, 2.0)

### First Generation (*deprecated, latest version 1.1*)
First generation of OIV packages. Can have multiple contents for one or several games. This version support following games:
* Grand Theft Auto IV
* Episodes from Liberty City
* Max Payne 3
* Grand Theft Auto V

The only supported platform is Windows PC.
For Grand Theft Auto V, the “mods” folder also supported.

[Version 2.1 Specification](https://github.com/OpenIV-Team/OpenIV-PackageFormat/blob/master/specification/versions/2.1.md)
*This generation deprecated and will not evolve in future.*

## Version 1.1 (*deprecated*)
First generation of OIV packages. Can have multiple contents for one or several games. This version support following games:
### Second Generation (*current version 2.2*)
Second generation of OIV packages. Main difference from the first generation, it can contain only one content block for only one game. Also, it has additional options for controlling appearance of Package Installer.

List of supported games:
* Grand Theft Auto IV
* Episodes from Liberty City
* Max Payne 3
* Grand Theft Auto V

The only supported platform is Windows PC.
For Grand Theft Auto V, the “mods” folder also supported.

*This generation deprecated and will not evolve in future.*

[Version 1.1 Specification (*deprecated*)](https://github.com/OpenIV-Team/OpenIV-PackageFormat/blob/master/specification/versions/1.1.md)
## See It in Action
If you just want to see it work, check out the [list of current examples](examples/v2.2).

## OpenIV Support
At the current moment latest version of OpenIV supports the following versions of OIV Package Format:
* Version 1.0
* Version 1.1
* Version 2.0
* Version 2.2
* Version 2.1
* Version 2.0
* Version 1.1
* Version 1.0
Empty file.
8 changes: 4 additions & 4 deletions specification/versions/2.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -566,12 +566,12 @@ Every creepeth, creature thing good day you'll bearing, light let. Forth. They'r
The following example is showing how to add or replace file inside GTA V update.rpf:
``` xml
<?xml version="1.0" encoding="UTF-8"?>
<package version="2.0" id="{6D501E5D-DD68-42CB-ACA4-A920DFC905E3}" target="Five">
<package version="2.1" id="{6D501E5D-DD68-42CB-ACA4-A920DFC905E3}" target="Five">
<metadata>
<name>Test Package (OIV 2.0)</name>
<name>Test Package (OIV 2.1)</name>
<version>
<major>1</major>
<minor>0</minor>
<major>2</major>
<minor>1</minor>
</version>
<author>
<displayName>OpenIV Team</displayName>
Expand Down
Loading

0 comments on commit 6f9d25a

Please sign in to comment.