amnesia-spelos / amnesia-spelos/streamnesia

[Feature]: Cleanly separate Streamnesia payload assets

Aperta
#51 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
low priority Payload
Lingua principale
C#
Stelle
4
Fork
3
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## What the problem is

_Some payloads depend on custom assets (models, entities, sounds, music, etc.). These resources are often merged directly into the main game's directory structure, for example we put entities into the game's entities directory._

This approach is mess because when Streamnesia is uninstalled, we have no way of determining which assets were created by us, and which are for example the user's own custom assets. Even a file index of standard Amnesia assets wouldn't be useful since the user might have their own custom assets installed. We should not be deleting those.

Currently, the application completely ignores payload assets and leaves them in place. The true process of cleaning up involves uninstalling the game, manually deleting the remaining files and installing the game again. This is not a great user experience.

## What needs to get done

The approach of installing payload needs to change to the following:

The payloads structure must change to contain all custom assets in their respective sub-directories in a specific `streamnesia-assets/` directory placed in Amnesia's root.

```
Amnesia The Dark Descent/
├── Amnesia.exe
└── streamnesia-assets/
├── entities/
│ ├── payload_entity_1.ent
│ └── payload_entity_2.ent
└── static_objects/
├── payload_object_1.dae
└── payload_object_2.dae
```

When the user decides to download and install payloads:
1. The payloads get download
1. Payloads get extracted into `.\streamnesia\payloads\` directory as usual
1. Payload assets get extracted into `./streamnesia-assets/` directory as described above
1. The application ensures the `resources.cfg` file in Amnesia's root contains ``

This process cleanly separates streamnesia assets from standard and user's custom assets.

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.