s2cfgtojson
Version:
Converts Stalker 2 Cfg file into a POJO
85 lines (60 loc) • 1.82 kB
Markdown
# Stalker 2 CFG to JSON Converter
A utility to convert Stalker 2 `.cfg` configuration files into structured JavaScript objects (POJOs), enabling easier mod development and analysis.
## Key Features
- **Struct Class**: A flexible base class for parsing and generating Stalker 2 config structures, handling nested data, wildcards, and indexed entries.
- **TypeScript Support**: Built with TypeScript for type safety and clarity.
## Getting Started
### Prerequisites
- Node.js ≥24
- npm (or pnpm/yarn)
### Installation
In your project directory, run:
```bash
npm install s2cfgtojson
```
Or, if you checked out the repository, you can install dependencies directly:
```bash
npm install
```
### Usage
Import the `Struct` class from `Struct.mts` to parse or generate Stalker 2 config data. For example:
```ts
import { Struct } from './Struct.mts';
const config = new Struct();
// Use methods like `toString()` or `fromString()` to process configs
```
## Example
Convert a `.cfg` file to a structured object:
```ts
const configText = `
BasePhantomAttack : struct.begin {refkey=BaseAttackAbility}
TriggeredCooldowns : struct.begin
[0] : struct.begin
CooldownTag = Ability.Cooldown.RunAttack
Duration = 50.f
struct.end
struct.end
struct.end
`;
const parsed = Struct.fromString(configText)[0];
console.log(parsed.entries.TriggeredCooldowns);
```
## Development
### Tests
Run tests using:
```bash
npm test
```
## Contributing
Feel free to contribute by submitting issues or pull requests. Ensure your code adheres to the project's coding standards and includes tests for new features.
## License
Free to use in non-commercial projects.
## Notes
Thanks, GSC and modders for providing the community with tools to enhance the modding experience.