Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Implementations: Difference between revisions

 
(49 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Implémentation des éléments du jeu ==
[[Gotcha Force | ← Gotcha Force]]


=== Borgs ===
<div style="text-align: center;">
==== Éléments d'interface graphique ====
<div style="color: rgb(241, 196, 15);">This section is a work in progress.</div>
==== Fichiers et fonctionnement ====
<div style="color: rgb(241, 196, 15); text-align: center;">Research is still needed and some paragraphs may be wrong.</div>
Les borgs sont implémentés avec un ensemble de fichiers ayant une fonction spécifique.
</div>


Pour chaque borg on a :<br>
== Implementation of the game elements ==
plxxxx.pzz
 
├─ 000 fichier data.bin  -> parfois absent
=== Borg ===
├─ 001 ?                -> souvent absent
==== GUI elements ====
├─ 002 fichier hit.bin  -> toujours présent
==== Borgs GET system ====
├─ 003 fichier mot.bin  -> souvent absent
CrystalPixel who found the values.
├─ 004 fichier _mdl.arc  -> parfois absent
 
├─ 005 fichier b_mdl.arc -> parfois absent
During a fight in Story Mode, when fighting an enemy borg for a given colour you have two values:
├─ 006 fichier g_mdl.arc -> parfois absent
* The GET value
├─ 007 fichier s_mdl.arc -> parfois absent
* The GET counter
├─ 008 fichier c_mdl.arc -> parfois absent
├─ 009 fichier k_mdl.arc -> parfois absent
├─ 010 [[TPL (Format de fichier)|TPL]] -> nom du borg en japonais
├─ 011 [[TPL (Format de fichier)|TPL]] -> nom du borg en japonais (petit format)
├─ 012 [[TPL (Format de fichier)|TPL]] -> nom du borg dans la langue du jeu
└─ 013 [[TPL (Format de fichier)|TPL]] -> identique à mnxxxx.tpl, nom du borg dans la langue du jeu (petit format)
plxxxxdata.bin  <- position 000 du pzz - fichier pouvant être nommé data2 ou data3, parfois absent de l'afs_data
plxxxxhit.bin  <- position 002 du pzz - toujours présent dans l'afs_data et le pzz
plxxxxmot.bin  <- position 003 du pzz - souvent absent de l'afs_data
plxxxx_mdl.arc  <- position 004 du pzz - parfois absent de l'afs_data
plxxxxb_mdl.arc <- position 005 du pzz - parfois absent de l'afs_data
plxxxxg_mdl.arc <- position 006 du pzz - parfois absent de l'afs_data
plxxxxs_mdl.arc <- position 007 du pzz - parfois absent de l'afs_data
plxxxxc_mdl.arc <- position 008 du pzz - parfois absent de l'afs_data
plxxxxk_mdl.arc <- position 009 du pzz - parfois absent de l'afs_data


When you eliminate the enemy borg of a given colour, you have its GET counter which increments by a random value between 1 and 16. When the GET counter is greater than or equal to the GET value, we get the borg / Data Crystal at the end of the battle. Then the GET counter of this borg / colour combination is reset to 0. If one leaves or loses the battle, all GET counters are reset to the value they had before the battle started.


Position 000 : pour pl0604 et quelques autres borgs il s'agit de pl0604data2.bin ou plxxxxdata3.bin (seul un des trois data est présent, jamais deux, et ce fichier data2 ou data3 est identique au fichier data du pzz->000). (Version NTSC)
For a large number of borgs it is then impossible to get them without having fought a certain amount. For example, Gold Death Borg Alpha has a GET value of 40. In two battles, for example, you can only get 36 in the best case.


Position 002 : pour le borg pl0507 et pl0513, le fichier 2 et le hit diffèrent. (Version NTSC)
1 borg has a GET value of -1:
* Galactic Emperor


Position 003 : pour le borg "pl0009", le fichier 3 et le mot diffèrent. (Version NTSC) (Mot - '''Mo'''uvemen'''t''') - On peux observer que pour ces fichiers, on retrouve des références pouvant faire penser à de l'animation '''plxxxx_xx_animjoint'''.  L'investigation mené par la communauté de [https://smashboards.com/threads/melee-dat-format.292603/ Smash Bros Brawl] montre une structure de fichier similaire. Il s'agit d'une autre version de HSD (Les structures de bases sont les mêmes).
The rest has no GET value:
* Cyber Death Dragon (Fusion Borg)
* Machine Dragon
* Cyber Machine Seiryu (Fusion Borg)
* Cyber Machine Suzaku (Fusion Borg)
* Cyber Machine Byakko (Fusion Borg)
* Cyber Machine Genbu (Fusion Borg)
* G Red (One of the borg we have)
* Neo G Red (One of the borgs we have)
* G Black (It is obtained in a special event)


Position 004 à 009 : contiennent '''"scene_data"''' en fin de section data, et sont des fichiers ''''"Scène"''' (HSDLib) qui contiennent les lumières, les caméras, les vertices, les bones à la manière d'un .blend.
By changing the GET value to a positive value, you can get the borgs in the scenario: Galactic Emperor for example.


pl0803 - pl080b - pl0f07 :
The list of GET values for the EU version is available on [https://github.com/Virtual-World-RE/NeoGF/blob/main/data/eu_borgs_GET_values.csv github].
Il reste uniquement le fichier pl0803hit.bin et pl080bhit.bin et aucun de leurs fichiers associés (notamment, pas de pzz associé), ce qui indique qu'ils sont à priori des restes de borgs non implémentés ... De même que le pzz pl0f07 n'a pas son fichier hit, ni ses 4 TPL internes (4 fichiers vides à la place) mais juste son fichier pl0f07_mdl.arc, ce qui indique que ce borg n'est pas implémenté non plus. (Version NTSC).


On retrouve des fichiers vides dans les 2 dpxxxx.pzz en position 001.
==== Files and operation ====
Borgs are implemented with a set of files, each with a specific function. These files are duplicated in the pzz of the borg and in the afs_data. The different _mdl define the different colours of the Borg. It seems that they are used with additional values in other files (the displays are not always correct when exchanging positions in the iso). The main _mdl is loaded from the pzz (collection or story menu). <span style="color: rgb(241, 196, 15);">One theory would be that part of the duplicate files would be used to load enemies and the other part allies.</span>


Fichiers plxxxx.pzz (209)
For each borg we have:<br>
On sait désormais que les PZZ avec le nom plxxxx.pzz correspondent chacun à un borg. Ils contiennent des fichiers spécialisés à chacune des positions dans le pzz. Il arrive que le fichier à une position donnée soit présent dans certains pzz et absent dans d'autres :
plxxxx.pzz
├─ 000 file [[Borg - data file|plxxxxdata.bin]]  -> always present
├─ 001?                    -> often not present
├─ 002 file plxxxxhit.bin  -> always present
├─ 003 file [[Motions|plxxxxmot.bin]]  -> often not present
├─ 004 file [[Models|plxxxx_mdl.arc]]  -> always present
├─ 005 file [[Models|plxxxxb_mdl.arc]] -> always present -> blue model
├─ 006 file [[Models|plxxxxg_mdl.arc]] -> always present
├─ 007 file [[Models|plxxxxs_mdl.arc]] -> always present -> silver model
├─ 008 file [[Models|plxxxxc_mdl.arc]] -> always present
├─ 009 file [[Models|plxxxxk_mdl.arc]] -> always present -> black model
├─ 010 [[TPL (File format)|TPL]] -> name of the borg in Japanese
├─ 011 [[TPL (File format)|TPL]] -> name of the borg in Japanese (small format)
├─ 012 [[TPL (File format)|TPL]] -> borg name in the language of the game
└─ 013 file mnxxxx.tpl -> [[TPL (File format)|TPL]] -> name of the borg in the game language (small format)
[[Borg - data file|plxxxxdata.bin]] -> file can be named data2 or data3 (only one of the three is present), sometimes missing from the afs_data
plxxxxhit.bin  -> always present in the afs_data and pzz
[[Motions|plxxxxmot.bin]]  -> often absent from the afs_data
[[Models|plxxxx_mdl.arc]]  -> sometimes missing from afs_data
[[Models|plxxxxb_mdl.arc]] -> sometimes missing from afs_data
[[Models|plxxxxg_mdl.arc]] -> sometimes missing from afs_data
[[Models|plxxxxs_mdl.arc]] -> sometimes missing from afs_data
[[Models|plxxxxc_mdl.arc]] -> sometimes missing from afs_data
[[Models|plxxxxk_mdl.arc]] -> sometimes missing from afs_data
mnxxxx.tpl


Position 002: for borg pl0507 and pl0513, file 2 and hit differ (USA/NTSC version)


Position 003: for the borg pl0009, file 3 and the word differ (USA/NTSC version) (MOT - ''Mot'''ion) - It can be observed that for these files, there are references that could make one think of ''plxxxx_xx_animjoint''.  The investigation conducted by the [https://smashboards.com/threads/melee-dat-format.292603/ Smash Bros Brawl] community shows a similar file structure. This is another version of HSD (the basic structures are the same).


Les [[TPL (Format de fichier)|TPL]] contiennent le nom des borgs en japonais (version JAP) ou en anglais et japonais (version NTSC). En position 4 à 8, on retrouve des fichiers avec des valeurs correspondantes à de la 3D. On peut notamment citer "'''pl0300.pzz'''" ou les position 4 à 8 ont un header <span style="color: rgb(241, 196, 15);">avec des flags</span> ainsi qu'un padding ajustable si besoin est d'avoir plus d’éléments '''Par exemple pour ''pl0629.pzz'' la quantité <span style="color: rgb(241, 196, 15);">de flags</span> dans le headers est plus conséquente.''' L'origine <span style="color: rgb(241, 196, 15);">des flags</span> et des valeurs dans le header est pour l'instant inconnue mais ces champs du header <span style="color: rgb(241, 196, 15);">pourraient constituer une liste de mesh disponibles dans le fichier.</span>
Position 004 to 009: contain '''scene_data''' at the end of the data section, and are ''''"Scene"'' files (HSDLib) which contain lights, cameras, vertices, bones in the manner of a .blend.


"'''pl0f07.pzz'''" correspond à un borg non implémenté
Position 004 to 008: files with values corresponding to 3D. In particular, we can cite '''pl0300.pzz''' where they have a header <span style="color: rgb(241, 196, 15);">with flags</span> as well as an adjustable padding if need be to have more elements '''For example for '''pl0629.pzz''' the amount <span style="color: rgb(241, 196, 15);">of flags</span> in the headers is more consistent.'' The origin <span style="color: rgb(241, 196, 15);">of the flags</span> and values in the header is currently unknown but these header fields <span style="color: rgb(241, 196, 15);">might constitute a list of available meshes in the file.</span> The software used to read the files in position 004 to 009 in plxxxx.pzz are 3D Model Researcher and HSDRawLibrary.


'''Unimplemented borgs''': pl0803 - pl080b - pl0f07<br>
Only the pl0803hit.bin and pl080bhit.bin files remain, and none of their associated files (notably, no associated pzz), which indicates that they are remnants of unimplemented borgs... Also the pzz pl0f07 has no hit file, no 4 internal TPLs (but 4 empty files instead) and just its pl0f07_mdl.arc file, which indicates that this borg is not implemented either (USA/NTSC version).


Les logiciels utilisé pour lire les fichiers en position 4 à 9 dans les plxxxx.pzz sont 3D Model Researcher et HSDRawLibrary.
The 2 dpxxxx.pzz files are similar files to plxxxx.pzz but without the final TPL files. Their usefulness is still to be determined.


Fichiers dpxxxx.pzz (2)
Files dpxxxx.pzz (2)
* 000 -> plxxxxdata.bin de l'afs_data
├─ 000 -> [[Borg - data file|plxxxxdata.bin]] from afs_data
* 001 -> fichier vide
├─ 001 -> empty file
* 002 -> plxxxxhit.bin de l'afs_data
├─ 002 -> plxxxxhit.bin from the afs_data
* 003 -> plxxxxmot.bin de l'afs_data
├─ 003 -> [[Motions|plxxxxmot.bin]] from the afs_data
* 004 -> plxxxx_mdl.arc
├─ 004 -> [[Models|plxxxx_mdl.arc]] of the afs_data
* 005 -> plxxxxb_mdl.arc
├─ 005 -> [[Models|plxxxxb_mdl.arc]] of the afs_data
* 006 -> plxxxxg_mdl.arc
├─ 006 -> [[Models|plxxxxg_mdl.arc]] of the afs_data
* 007 -> plxxxxs_mdl.arc
├─ 007 -> [[Models|plxxxxs_mdl.arc]] of the afs_data
* 008 -> plxxxxc_mdl.arc
├─ 008 -> [[Models|plxxxxc_mdl.arc]] of the afs_data
* 009 -> plxxxxk_mdl.arc
└─ 009 -> [[Models|plxxxxk_mdl.arc]] of the afs_data


==== Sauvegarde mémoires ====
==== Memory backups ====


=== Data Crystals ===
=== Data Crystals ===
==== Éléments d'interface graphique ====
The itxxxx_mdl.arz, once unpacked with pzztool.py are the templates for the data crystals.
==== Fichiers et fonctionnement ====
 
==== Sauvegarde mémoires ====
==== Graphical interface elements ====
 
unitall_mdl.arc contains all the borg thumbnails used in the force creation/modification menu as well as in the post-combat scene showing which team/borgs VS team/borgs, and in the data crystals.
 
==== Files and operation ====
==== Memory saves ====
 
[[Category:Implementations]]
[[Category:Gotcha Force]]

Latest revision as of 14:13, 7 October 2023

← Gotcha Force

This section is a work in progress.
Research is still needed and some paragraphs may be wrong.

Implementation of the game elements

Borg

GUI elements

Borgs GET system

CrystalPixel who found the values.

During a fight in Story Mode, when fighting an enemy borg for a given colour you have two values:

  • The GET value
  • The GET counter

When you eliminate the enemy borg of a given colour, you have its GET counter which increments by a random value between 1 and 16. When the GET counter is greater than or equal to the GET value, we get the borg / Data Crystal at the end of the battle. Then the GET counter of this borg / colour combination is reset to 0. If one leaves or loses the battle, all GET counters are reset to the value they had before the battle started.

For a large number of borgs it is then impossible to get them without having fought a certain amount. For example, Gold Death Borg Alpha has a GET value of 40. In two battles, for example, you can only get 36 in the best case.

1 borg has a GET value of -1:

  • Galactic Emperor

The rest has no GET value:

  • Cyber Death Dragon (Fusion Borg)
  • Machine Dragon
  • Cyber Machine Seiryu (Fusion Borg)
  • Cyber Machine Suzaku (Fusion Borg)
  • Cyber Machine Byakko (Fusion Borg)
  • Cyber Machine Genbu (Fusion Borg)
  • G Red (One of the borg we have)
  • Neo G Red (One of the borgs we have)
  • G Black (It is obtained in a special event)

By changing the GET value to a positive value, you can get the borgs in the scenario: Galactic Emperor for example.

The list of GET values for the EU version is available on github.

Files and operation

Borgs are implemented with a set of files, each with a specific function. These files are duplicated in the pzz of the borg and in the afs_data. The different _mdl define the different colours of the Borg. It seems that they are used with additional values in other files (the displays are not always correct when exchanging positions in the iso). The main _mdl is loaded from the pzz (collection or story menu). One theory would be that part of the duplicate files would be used to load enemies and the other part allies.

For each borg we have:

plxxxx.pzz
├─ 000 file plxxxxdata.bin  -> always present
├─ 001?                     -> often not present
├─ 002 file plxxxxhit.bin   -> always present
├─ 003 file plxxxxmot.bin   -> often not present
├─ 004 file plxxxx_mdl.arc  -> always present
├─ 005 file plxxxxb_mdl.arc -> always present -> blue model
├─ 006 file plxxxxg_mdl.arc -> always present
├─ 007 file plxxxxs_mdl.arc -> always present -> silver model
├─ 008 file plxxxxc_mdl.arc -> always present
├─ 009 file plxxxxk_mdl.arc -> always present -> black model
├─ 010 TPL -> name of the borg in Japanese
├─ 011 TPL -> name of the borg in Japanese (small format)
├─ 012 TPL -> borg name in the language of the game
└─ 013 file mnxxxx.tpl -> TPL -> name of the borg in the game language (small format)
plxxxxdata.bin -> file can be named data2 or data3 (only one of the three is present), sometimes missing from the afs_data
plxxxxhit.bin   -> always present in the afs_data and pzz
plxxxxmot.bin   -> often absent from the afs_data
plxxxx_mdl.arc  -> sometimes missing from afs_data
plxxxxb_mdl.arc -> sometimes missing from afs_data
plxxxxg_mdl.arc -> sometimes missing from afs_data
plxxxxs_mdl.arc -> sometimes missing from afs_data
plxxxxc_mdl.arc -> sometimes missing from afs_data
plxxxxk_mdl.arc -> sometimes missing from afs_data
mnxxxx.tpl

Position 002: for borg pl0507 and pl0513, file 2 and hit differ (USA/NTSC version)

Position 003: for the borg pl0009, file 3 and the word differ (USA/NTSC version) (MOT - Mot'ion) - It can be observed that for these files, there are references that could make one think of plxxxx_xx_animjoint. The investigation conducted by the Smash Bros Brawl community shows a similar file structure. This is another version of HSD (the basic structures are the same).

Position 004 to 009: contain scene_data at the end of the data section, and are ''"Scene" files (HSDLib) which contain lights, cameras, vertices, bones in the manner of a .blend.

Position 004 to 008: files with values corresponding to 3D. In particular, we can cite pl0300.pzz' where they have a header with flags as well as an adjustable padding if need be to have more elements For example for pl0629.pzz the amount of flags in the headers is more consistent. The origin of the flags and values in the header is currently unknown but these header fields might constitute a list of available meshes in the file. The software used to read the files in position 004 to 009 in plxxxx.pzz are 3D Model Researcher and HSDRawLibrary.

Unimplemented borgs: pl0803 - pl080b - pl0f07
Only the pl0803hit.bin and pl080bhit.bin files remain, and none of their associated files (notably, no associated pzz), which indicates that they are remnants of unimplemented borgs... Also the pzz pl0f07 has no hit file, no 4 internal TPLs (but 4 empty files instead) and just its pl0f07_mdl.arc file, which indicates that this borg is not implemented either (USA/NTSC version).

The 2 dpxxxx.pzz files are similar files to plxxxx.pzz but without the final TPL files. Their usefulness is still to be determined.

Files dpxxxx.pzz (2)

├─ 000 -> plxxxxdata.bin from afs_data
├─ 001 -> empty file
├─ 002 -> plxxxxhit.bin from the afs_data
├─ 003 -> plxxxxmot.bin from the afs_data
├─ 004 -> plxxxx_mdl.arc of the afs_data
├─ 005 -> plxxxxb_mdl.arc of the afs_data
├─ 006 -> plxxxxg_mdl.arc of the afs_data
├─ 007 -> plxxxxs_mdl.arc of the afs_data
├─ 008 -> plxxxxc_mdl.arc of the afs_data
└─ 009 -> plxxxxk_mdl.arc of the afs_data

Memory backups

Data Crystals

The itxxxx_mdl.arz, once unpacked with pzztool.py are the templates for the data crystals.

Graphical interface elements

unitall_mdl.arc contains all the borg thumbnails used in the force creation/modification menu as well as in the post-combat scene showing which team/borgs VS team/borgs, and in the data crystals.

Files and operation

Memory saves