Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Buttplug.io game mod for DeppartPrototype | 适配郊狼 3.0 DG-Lab-V3

License

NotificationsYou must be signed in to change notification settings

Ljzd-PRO/DeppartPrototypeHentaiPlayMod

Repository files navigation

About the game DeppartPrototype

Deppart is an indie first-person horror game with shooter elements.
Be very careful, enemies kill you with one hit.
https://n4ba.itch.io/deppart

Feature

  • Buttplug devices will be activated on these situations:
    • Gun shot
    • Jump-scares
    • During battle
    • Player died
    • Game end
  • Mainly useVibrate command, but you can add other scalar commands
  • Provide an alternative event reporter instead of buttplug (HttpReporter)

Usage

  1. Install MelonLoader:
  2. Download latest release and extract:
  3. Place theMods directory under the game path.
  4. InstallIntiface® Central
  5. Launch Intiface® Central, start the engine server.
  6. Launch the game, connect you Buttplug device to Intiface® Central.
  7. (Optional) Configure the mod preference inUserData\MelonPreferences.cfg under the game path.
  8. Enjoy the game.

For DG-Lab Users

该 Mod 已适配 郊狼 2.0 3.0 即 DG-Lab-V2, V3,但是需要修改 Mod 配置,同时需要使用专门适配的 buttplug 分支。

  • 郊狼 3.0 具体请查看文档:docs/dg-lab-v3.md
  • 郊狼 2.0 由于没有设备可测试,无法给出具体配置参考,但可以参考 3.0 进行配置。

Preference

Some important options:

  • ButtPlugServerUrl
  • ButtPlugActiveVibrateScalar
  • ButtPlugShotVibrateScalar
  • ButtPlugVibrateDuration
  • ButtPlugVibrateCmdIndexList
  • ButtPlugAdditionalScalarList
[HentaiPlay]# Type of reporter that report events in game (Available: BaseReporter, HttpReporter, ButtPlugReporter)EventReporterType = "ButtPlugReporter"# Report URL for HttpReporterHttpReporterUrl = "http://127.0.0.1:7788/report"# Time interval for HttpReporter to reporting InGame eventsHttpReportInGameInterval =3000# Not to report events to ConsoleDisableEventLog = false# Websocket URL of ButtPlug server (Intiface Central)ButtPlugServerUrl = "ws://localhost:12345"# Set the ButtPlug vibrate scalar when game events activeButtPlugActiveVibrateScalar =0.5# Set the ButtPlug vibrate scalar when gun shotButtPlugShotVibrateScalar =1.0# Set the ButtPlug vibrate duration when gun shot (Millisecond)ButtPlugVibrateDuration =300# Set the index of ButtPlug vibrate scalar commands, you can set multiple index or empty as default. (e.g. [0,1])ButtPlugVibrateCmdIndexList = [ ]# Set the additional ButtPlug scalar commands, which called during vibrate (It will set to 0 after vibrate stop)[[HentaiPlay.ButtPlugAdditionalScalarList]]Enable = falseActuatorType = "Oscillate"Index =0Scalar =0.5[[HentaiPlay.ButtPlugAdditionalScalarList]]Enable = falseActuatorType = "Inflate"Index =0Scalar =0.5

AboutHttpReporter

This isOPTIONAL, you can setup an HTTP server to handle events in the mod instead of using buttplug.

Set the optionEventReporterType inUserData\MelonPreferences.cfg to"HttpReporter" if you want to use this.

HttpReporter API

Define inopenapi.yaml.

Example implementation for the server ofHttpReporter

importdatetimefromenumimportStrEnumfromtypingimportLiteralfromfastapiimportFastAPIfromloguruimportloggerapp=FastAPI()classEventNameEnum(StrEnum):GameEnter="GameEnter"GameExit="GameExit"InGame="InGame"BulbBroken="BulbBroken"ZombieRun="ZombieRun"EnterLevel1="EnterLevel1"Level1Zombie="Level1Zombie"EndZombie="EndZombie"PlayerDied="PlayerDied"Shot="Shot"@app.get("/report")asyncdefreport(event_name:Literal[EventNameEnum.GameEnter,EventNameEnum.GameExit,EventNameEnum.InGame,EventNameEnum.BulbBroken,EventNameEnum.ZombieRun,EventNameEnum.EnterLevel1,EventNameEnum.Level1Zombie,EventNameEnum.EndZombie,EventNameEnum.PlayerDied,EventNameEnum.Shot        ],status:Literal["activate","deactivate"]=None,t:datetime.datetime=None):logger.info(f"event_name:{event_name}, "f"status:{status}, "f"t:{t.astimezone(tz=None)}, "f"latency:{datetime.datetime.now(datetime.timezone.utc)-t}")

[8]ページ先頭

©2009-2025 Movatter.jp