10 SDED
Dniel97 edited this page 2024-03-28 22:10:41 +01:00

SDED

Some instructions how to get SDED up and running

Setup Instructions

  1. Get the game data and extract it somewhere (E:/ drive won't work!)
  2. Get the Option data (A001, A002, ...) and extract it preferable inside Package/option/
  3. Grab one of the segatools below and extract it in Package/:

segatools

Name Link Details
segatools Download cm.zip - Open-Source
- Touch Screen emulation
- Working coin input
- Working option loading
  1. Read the segatools Documentation and configure at least those values in your segatools.ini:

[vfs]

Key Value Documentation
amfs Empty string (causes a startup error) Configure the location of the SEGA AMFS volume. Stored on the E partition on real hardware.
appdata Empty string (causes a startup error) Configure the location of the SEGA "APPDATA" volume (nothing to do with the Windows user's %APPDATA% directory). Stored on the Y partition on real hardware.
option Default: Empty string Configure the location of the "Option" data mount point. This mount point is optional (hence the name, probably) and contains directories which contain minor over-the-air content updates.

[dns]

Key Value Documentation
default Default: localhost Controls hostname of all of the common network services servers, unless overriden by a specific setting below. Most users will only need to change this setting. Also, loopback addresses are specifically checked for and rejected by the games themselves; this needs to be a LAN or WAN IP (or a hostname that resolves to one). Use your local IPv4 PC address if unsure.

[gpio]

Key Value Documentation
dipsw1 Default: 0 LAN Install: If multiple machines are present on the same LAN then set this to 0 on exactly one machine and set this to 1 on all others..
  1. Create a file DEVICE\aime.txt and enter your aime access code or generate 20 random digits (Make sure the first digit is not a 3!)
  2. Grab the unpacked/modded files according to your game version:

Packages

Version Link Details
1.35 Download - TLS and Encryption disabled in AssemblyCSharp.dll
- Printer emulation included with PrintDLL.dll
  1. Unpack the files and overwrite everything (Optional: Make a Backup of package/CardMaker_Data/Managed and package/CardMaker_Data/Plugins)
  2. Use one of the following local servers to save your progress:

Server

Name Programming language Details
aqua JAVA 17+ - Easy to install/run
- Nice working GUI
- Slow updates
- Only supports SDED 1.34 Mai2/Chusan
- NO SDDT support
- Currently archived
ARTEMiS Python 3.9+ - Harder to setup/easy to run
- Useless GUI
- Faster/more frequent updates
- Supports importing your own Option data
- Supports all Card Maker features
  1. Regardless of the used server, make sure the dns entry in segatools.ini USES A DOMAIN, IP Addresses won't work for that game!
  2. DONE! Launch start.bat and have fun

Using a domain for ARTEMiS

Add to your Windows hosts file the folllowing line. Replace the X with your local IP address (Don't use 127.0.0.1 as it is blocked!). artemis.local can be whatever as long as it is a proper domain.

192.168.X.X       artemis.local

Edit your config/core.yaml and make sure to use the previously added domain for the title hostname.

title:
  hostname: artemis.local

Patching AssemblyCSharp.dll

If you somehow got an unpacked AssemblyCSharp.dll, you only need to patch small things for local network support:

Disable TLS:

namespace CardMaker.Common
{
    public static class CommonStatic
    {
        public struct Settings_
        {
            public void initialize()
            {
                this.UseTLS = false;
                // this.DummyTouchPanel = true;
            }
        }
    }
}

Disable Encryption:

namespace CardMaker.Common
{
    public class CommonContext : ContextBase<CommonContext>
    {
        public static void loadResources(int id, string prefix)
        {
            num = 0; // add num=0 before instance.initialize()
            instance.initialize(id, array, array2, array3, num);
        }
    }
}

(c) Instructions written by Dniel97