Skip to content

Commit 0e831d5

Browse files
committed
feat: emulators guide
1 parent df0c9a8 commit 0e831d5

File tree

2 files changed

+55
-1
lines changed

2 files changed

+55
-1
lines changed

astro.config.mjs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,10 @@ export default defineConfig({
5454
},
5555
{
5656
label: "Going further",
57-
items: [{ slug: "admin/going-further/importing-update" }],
57+
items: [
58+
{ slug: "admin/going-further/importing-update" },
59+
{ slug: "admin/going-further/emulators" },
60+
],
5861
},
5962
{
6063
label: "Metadata",
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
title: Emulators
3+
---
4+
5+
import { Steps } from "@astrojs/starlight/components";
6+
7+
Emulation, broadly speaking, is launching one game with another executable, instead of directly as a native game. For Drop, we have to import at minimum, two versions:
8+
9+
- Our emulator (referred to as MyEmulator)
10+
- Our game (referred to as MyGame)
11+
12+
For convenience's sake, we can also specify file extensions for Drop's auto-detect features. For this guide, we'll use `.rom`
13+
14+
<Steps>
15+
1. ## Import the emulator
16+
17+
When importing a game, you can now select it as an "emulator". This enables other configuration options for emulators later down the line, and **hides it from the store.**
18+
19+
Your metadata providers are unlikely to be able to find it. You might have to use the manual import option.
20+
21+
2. ## Import the emulator version
22+
23+
Once you've imported your emulator, open the version importer for your game.
24+
25+
:::caution
26+
The client currently will panic with a `todo!()` marker if you set the setup executable.
27+
:::
28+
29+
Add a launch executable for every platform you want to support. The options are fairly self-explanatory, but make sure to use the `{rom}` placeholder, and optionally add the file extensions.
30+
31+
Read the [Command Parsing](/reference/command-parsing/) article to understand how it's parsed and substituted.
32+
33+
3. ## Import your game
34+
35+
Import your emulated game as usual.
36+
37+
4. ## Import your version (auto-suggest)
38+
39+
If you set your file extension above, simply select the ROM from the dropdown in one of your launch executables. It'll auto-fill the configuration needed.
40+
41+
5. ## Import your version (manually)
42+
43+
If you didn't set your file extension, enter the name of your ROM in the launch executable field. Then, click "Select new emulator", and search for your emulator game, select the version, and launch command.
44+
45+
It'll automatically pre-fill the platform field with the platform of your emulator.
46+
47+
</Steps>
48+
49+
:::note
50+
Setup executables cannot be configured to be executed through the emulator.
51+
:::

0 commit comments

Comments
 (0)