mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-11 14:03:23 -05:00
240 lines
7.9 KiB
YAML
240 lines
7.9 KiB
YAML
emulator: C-Dogs SDL
|
|
type: standalone
|
|
core_classification: game_engine
|
|
source: "https://github.com/cxong/cdogs-sdl"
|
|
upstream: "https://github.com/cxong/cdogs-sdl"
|
|
profiled_date: "2026-10-04"
|
|
source_commit: "57782a74ae245d868487094d201d0e56e94a9390"
|
|
core_version: "2.4.0"
|
|
display_name: "C-Dogs"
|
|
cores: [cdogs, cdogs-sdl]
|
|
systems: []
|
|
verification: existence
|
|
|
|
notes: |
|
|
Top-down shooter engine, open-source remake of the DOS C-Dogs by Ronny Wester.
|
|
The repository ships every asset the engine reads: data/, graphics/,
|
|
missions/, dogfights/, music/, sounds/ and doc/.
|
|
|
|
The data root is baked into the binary through -DCDOGS_DATA_DIR. The
|
|
source default is "../" ("./" on GCW0), CMakeLists.txt:141-147; Batocera
|
|
sets it to /userdata/roms/cdogs/. GetDataFilePath(), src/cdogs/utils.c:392,
|
|
returns an absolute request as it is, and otherwise joins CDOGS_DATA_DIR
|
|
(under the working directory when it is relative) with the requested path.
|
|
|
|
Paths below are written under cdogs/, which stands for that data root.
|
|
|
|
What the engine reads there:
|
|
data/: the JSON class definitions and name lists loaded by main(),
|
|
src/cdogs.c:226-245, and the two controller databases,
|
|
src/cdogs/joystick.c:43-54
|
|
data/.wolf3d/: campaign templates used when a Wolfenstein 3D, Spear of
|
|
Destiny or Super 3D Noah's Ark installation is found,
|
|
src/cdogs/map_wolf.c:50
|
|
graphics/: every .png, walked by PicManagerLoad,
|
|
src/cdogs/pic_manager.c:247-254, plus the font and the window icon
|
|
missions/ and dogfights/: campaigns, src/cdogs/campaigns.c:203-211
|
|
music/: six track directories, src/cdogs/music.c:45-50
|
|
sounds/: samples, src/cdogs.c:213
|
|
doc/CREDITS: src/credits.c:47
|
|
|
|
files:
|
|
- name: "ammo.json"
|
|
path: "cdogs/data/ammo.json"
|
|
category: game_data
|
|
description: "Ammo type definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:228, src/cdogs/ammo.c:77-84"
|
|
|
|
- name: "bullets.json"
|
|
path: "cdogs/data/bullets.json"
|
|
category: game_data
|
|
description: "Bullet behaviour definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:230-232, src/cdogs/weapon_class.c:739-746"
|
|
|
|
- name: "guns.json"
|
|
path: "cdogs/data/guns.json"
|
|
category: game_data
|
|
description: "Weapon definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:230-232, src/cdogs/weapon_class.c:757-763"
|
|
|
|
- name: "character_classes.json"
|
|
path: "cdogs/data/character_classes.json"
|
|
category: game_data
|
|
description: "Character class definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:234-235, src/cdogs/character_class.c:353-360"
|
|
|
|
- name: "map_objects.json"
|
|
path: "cdogs/data/map_objects.json"
|
|
category: game_data
|
|
description: "Interactive map object definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:244-245, src/cdogs/map_object.c:231-238"
|
|
|
|
- name: "particles.json"
|
|
path: "cdogs/data/particles.json"
|
|
category: game_data
|
|
description: "Particle effect definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:226, src/cdogs/particle.c:61-64"
|
|
|
|
- name: "pickups.json"
|
|
path: "cdogs/data/pickups.json"
|
|
category: game_data
|
|
description: "Pickup item definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:241-242, src/cdogs/pickup_class.c:246-252"
|
|
|
|
- name: "prefixes.txt"
|
|
path: "cdogs/data/prefixes.txt"
|
|
category: game_data
|
|
description: "Random name generation prefixes"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/prep.c:324-327, src/namegen.c:44-59"
|
|
note: "LoadFile reads the stream without checking that fopen succeeded."
|
|
|
|
- name: "suffixes.txt"
|
|
path: "cdogs/data/suffixes.txt"
|
|
category: game_data
|
|
description: "Random name generation suffixes"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/prep.c:325-327, src/namegen.c:44-59"
|
|
note: "LoadFile reads the stream without checking that fopen succeeded."
|
|
|
|
- name: "suffixnames.txt"
|
|
path: "cdogs/data/suffixnames.txt"
|
|
category: game_data
|
|
description: "Random name generation name suffixes"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/prep.c:326-327, src/namegen.c:44-59"
|
|
note: "LoadFile reads the stream without checking that fopen succeeded."
|
|
|
|
- name: "gamecontrollerdb.txt"
|
|
path: "cdogs/data/gamecontrollerdb.txt"
|
|
category: game_data
|
|
description: "SDL gamecontroller mapping database"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/joystick.c:43-48"
|
|
note: "A load failure is logged and the built-in SDL mappings stay in use."
|
|
|
|
- name: "gamecontrollerbuttondb.txt"
|
|
path: "cdogs/data/gamecontrollerbuttondb.txt"
|
|
category: game_data
|
|
description: "Controller button names and colours"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/joystick.c:49-54"
|
|
note: "A load failure is logged."
|
|
|
|
- name: ".wolf3d/"
|
|
type: directory
|
|
path: "cdogs/data/.wolf3d/"
|
|
category: game_data
|
|
description: "Campaign templates for Wolfenstein 3D, Spear of Destiny and Super 3D Noah's Ark"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/map_wolf.c:50, src/cdogs/map_wolf.c:110-134, src/cdogs/map_wolf.c:781-793"
|
|
note: >
|
|
Read only when the game data of one of these titles is found in a
|
|
Steam or GOG installation.
|
|
|
|
- name: "graphics/"
|
|
type: directory
|
|
path: "cdogs/graphics/"
|
|
category: game_data
|
|
description: "Sprites, tiles, HUD and character body definitions"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:189, src/cdogs/pic_manager.c:181-254, src/cdogs/draw/char_sprites.c:55-115"
|
|
note: >
|
|
PicManagerLoad walks the directory and loads every .png.
|
|
CharSpriteClassesLoadDir reads data.json from each directory of
|
|
graphics/chars/bodies/.
|
|
|
|
- name: "font.png"
|
|
path: "cdogs/graphics/font.png"
|
|
category: game_data
|
|
description: "Main bitmap font"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:186, src/cdogs/grafx.c:156, src/cdogs/font.c:54-60"
|
|
|
|
- name: "font.json"
|
|
path: "cdogs/graphics/font.json"
|
|
category: game_data
|
|
description: "Main bitmap font layout"
|
|
required: true
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:186, src/cdogs/grafx.c:156, src/cdogs/font_utils.c:35-41"
|
|
|
|
- name: "cdogs_icon.bmp"
|
|
path: "cdogs/graphics/cdogs_icon.bmp"
|
|
category: game_data
|
|
description: "Window icon"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/grafx.c:92-93"
|
|
|
|
- name: "missions/"
|
|
type: directory
|
|
path: "cdogs/missions/"
|
|
category: game_data
|
|
description: "Campaigns"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/sys_config.h.cmake:38, src/cdogs/campaigns.c:203-206, src/cdogs/campaigns.c:257-298"
|
|
note: >
|
|
Every entry of the directory is tried as a campaign and subdirectories
|
|
are walked. Quick play needs none.
|
|
|
|
- name: "dogfights/"
|
|
type: directory
|
|
path: "cdogs/dogfights/"
|
|
category: game_data
|
|
description: "Dogfight arenas"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/sys_config.h.cmake:39, src/cdogs/campaigns.c:208-211"
|
|
|
|
- name: "music/"
|
|
type: directory
|
|
path: "cdogs/music/"
|
|
category: game_data
|
|
description: "Music tracks: menu, briefing, game, end, lose, victory"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs/music.c:45-50, src/cdogs/music.c:52-64"
|
|
note: "Every file of each of the six directories is loaded as a track."
|
|
|
|
- name: "sounds/"
|
|
type: directory
|
|
path: "cdogs/sounds/"
|
|
category: game_data
|
|
description: "Sound effects"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/cdogs.c:213, src/cdogs/sounds.c:187-198, src/cdogs/sounds.c:199-244"
|
|
note: "SoundLoadDir walks the directory and loads every .ogg, .wav and .mp3."
|
|
|
|
- name: "CREDITS"
|
|
path: "cdogs/doc/CREDITS"
|
|
category: game_data
|
|
description: "Credits shown in the main menu"
|
|
required: false
|
|
bundled: true
|
|
source_ref: "src/credits.c:47-53"
|