Skip to content

🏛️ システムアーキテクチャとパッケージ構成 ​

📌 リポジトリソースコードに関する免責事項: 本Wikiドキュメントはリポジトリの最新ソースコード状態を反映しており、CurseForgeやModrinthで公開されているリリース版に含まれない開発中機能を含む場合があります。

Design PrincipleArchitectural Policy
Core PhilosophyVanilla Outsider (VO) — Diegetic, non-destructive, input-consistent
Design Rule1 File, 1 Function Law (Single-responsibility Cohesion)
Main Package Namespacenet.vanillaoutsider.betterbats
Thread Safety ModelServer-Thread Main Looper Sync (No async world mutation)

☕ 個人開発者ノート: 3D BOIDsによるコウモリのリアルな群飛やグアノによる作物施肥を気に入っていただけたら、ぜひ Ko-fi でのご支援をお願いします!


🌳 パッケージ階層ツリー ​

net.vanillaoutsider.betterbats
├── BetterBatsFabric.java          # Mod initialization, GameRules registration
├── BetterBatsFabricClient.java    # Client render layer, debug toggles
├── ai/                            # AI Goal domain logic
│   ├── BatDiveBombGoal.java       # Predatory hunting of silverfish/endermites
│   ├── BatFlightHelper.java       # 3D BOIDs flocking and vector math
│   ├── BatHuntLightGoal.java      # Nighttime phototaxis light orbiting
│   ├── BatPanicGoal.java          # Vibration acoustic panic dispersion
│   ├── BatRoostHelper.java        # Daytime roost surface validator
│   └── BatSleepGoal.java          # Roosting and guano accumulation
├── config/                        # YACL v3 and Cloth Config menus
│   ├── BetterBatsConfig.java      # Plain Java config data model
│   └── ModMenuIntegration.java    # ModMenu screen factory provider
└── mixin/                         # Bytecode injection layer
    ├── BatMixin.java              # Injects AI goals, flight forces, save data
    ├── GameEventDispatcherMixin.java # Acoustic vibration listener hook
    └── NaturalSpawnerMixin.java   # Dynamic ambient spawner weight replacement

🧩 主要クラスの責務 ​

  • BatFlightHelper: Stateless mathematical engine computing flocking, cohesion, separation, alignment, and altitude bounds.
  • BatRoostHelper: Checks valid roosting blocks (dripstone, chains, lanterns, leaves, solid ceilings).
  • BatMixin: Surgical bytecode hooks ensuring complete vanilla world-save safety.

Next: Mixin リファレンスと注入点 | AI行動プロファイルと状態

Official documentation & web portal for Dasik Igaijinn mods.