Token导航 LogoToken导航TokenDH.com
待分类敏感数据github未标认证来源可访问许可证需确认审计通过

create-simulated-aeronautics-mod创建模拟航空模型

Agent Skill

create-simulated-aeronautics-mod 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

3,816

周安装

159

GitHub Stars

39

下载量

1,272
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:create-simulated-aeronautics-mod(创建模拟航空模型)
来源仓库:https://github.com/aradotso/trending-skills
仓库路径:skills/create-simulated-aeronautics-mod
安装命令:
npx skills add https://github.com/aradotso/trending-skills --skill create-simulated-aeronautics-mod
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/aradotso/trending-skills --skill create-simulated-aeronautics-mod

简介

create-simulated-aeronautics-mod 用于创建基于 Create mod 的 Minecraft 航空与物理模组套件。

  • 适用于 Codex、Claude、Cursor、Gemini CLI 等宿主环境,适合 Minecraft 模组开发者使用。
  • 包含核心组装系统、飞行装置和越野载具三大模块,依赖 Sable 物理引擎实现真实力学模拟。
  • 安装前请确认权限范围、维护状态及是否会触发代码生成或资源文件写入操作。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Create Simulated Project (Aeronautics)

Skill by ara.so — Daily 2026 Skills collection.

What Is This Project?

The Simulated Project is a suite of NeoForge Minecraft mods that extend the Create mod with real-time physics-based contraptions. It consists of three interconnected mods:

ModPurpose
Create SimulatedCore assembly system, redstone components, physics interaction API
Create AeronauticsFlying contraptions — propellers, hot air, levitation rocks
Create OffroadLand vehicles — wheels, suspension, terrain traversal

Physics simulation is powered by Sable, a custom rigid-body physics engine built for Minecraft contraptions.


Installation (Player/Server)

Modrinth (Recommended)

  1. Download from modrinth.com/project/create-aeronautics
  2. Place the JAR(s) in your mods/ folder alongside dependencies

Required Dependencies

  • NeoForge (matching the mod's target Minecraft version)
  • Create mod (matching version)
  • Sable physics library

Recommended Launcher

Use Modrinth App or Prism Launcher for dependency resolution.


Developer Setup (Building from Source)

Clone & Build

git clone https://github.com/Creators-of-Aeronautics/Simulated-Project.git
cd Simulated-Project
./gradlew build

Run in Dev Environment

# Start a development client
./gradlew runClient

# Start a development server
./gradlew runServer

# Generate IDE run configurations (IntelliJ)
./gradlew genIntellijRuns

Project Structure

Simulated-Project/
├── simulated/          # Core mod — assembly, physics API
├── aeronautics/        # Flying contraptions submod
├── offroad/            # Land vehicle submod
├── common/             # Shared utilities across submods
└── build.gradle        # Multi-project Gradle build

Core Concepts

1. Simulated Contraptions

Unlike vanilla Create contraptions (which move block-by-block along tracks), Simulated contraptions are assembled into physics objects with:

  • Mass derived from block composition
  • Moment of inertia for rotation
  • Forces applied by thrusters, propellers, wheels

2. Assembly

Players assemble a contraption using a designated assembly block (similar to Create's mechanical bearing). Once assembled, the structure becomes a rigid physics body managed by Sable.

3. Force Providers

Blocks that apply forces to assembled contraptions:

  • PropellerBlock — directional thrust (Aeronautics)
  • HotAirBlock — upward buoyancy (Aeronautics)
  • LevitationRockBlock — magical lift (Aeronautics)
  • WheelBlock — ground traction and propulsion (Offroad)

Key API — Create Simulated Core

Registering a Custom Force Provider

import com.simulated.api.force.IForceProvider;
import com.simulated.api.contraption.SimulatedContraption;
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.Level;
import org.joml.Vector3f;

public class MyThrusterBlock extends Block implements IForceProvider {

    public MyThrusterBlock(Properties properties) {
        super(properties);
    }

    @Override
    public Vector3f getForce(SimulatedContraption contraption, BlockPos localPos, Level level) {
        // Return force vector in world space (Newtons equivalent)
        // Positive Y = upward lift, positive Z = forward thrust
        float thrustMagnitude = 500.0f;
        return new Vector3f(0, 0, thrustMagnitude);
    }

    @Override
    public Vector3f getTorque(SimulatedContraption contraption, BlockPos localPos, Level level) {
        // Torque applied around center of mass (optional)
        return new Vector3f(0, 0, 0);
    }
}

Registering Your Block with NeoForge

import net.neoforged.bus.api.IEventBus;
import net.neoforged.neoforge.registries.DeferredRegister;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.world.level.block.Block;
import net.neoforged.neoforge.registries.DeferredHolder;

public class MyModBlocks {

    public static final DeferredRegister<Block> BLOCKS =
        DeferredRegister.create(BuiltInRegistries.BLOCK, "mymod");

    public static final DeferredHolder<Block, MyThrusterBlock> MY_THRUSTER =
        BLOCKS.register("my_thruster", () -> new MyThrusterBlock(
            Block.Properties.of().strength(2.0f)
        ));

    public static void register(IEventBus eventBus) {
        BLOCKS.register(eventBus);
    }
}

Accessing a SimulatedContraption at Runtime

import com.simulated.api.contraption.SimulatedContraption;
import com.simulated.api.contraption.SimulatedContraptionHandler;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.Level;
import net.minecraft.world.phys.Vec3;

public class ContraptionUtils {

    /**
     * Get the simulated contraption an entity is riding, if any.
     */
    public static SimulatedContraption getRiddenContraption(Entity entity) {
        return SimulatedContraptionHandler.getContraptionForEntity(entity);
    }

    /**
     * Apply an impulse to a contraption's physics body directly.
     */
    public static void applyImpulse(SimulatedContraption contraption, Vec3 impulse) {
        contraption.getPhysicsBody().applyImpulse(
            new org.joml.Vector3f(
                (float) impulse.x,
                (float) impulse.y,
                (float) impulse.z
            )
        );
    }
}

Listening to Contraption Assembly Events

import com.simulated.api.event.ContraptionAssembleEvent;
import com.simulated.api.event.ContraptionDisassembleEvent;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;

@EventBusSubscriber(modid = "mymod")
public class ContraptionEventHandler {

    @SubscribeEvent
    public static void onAssemble(ContraptionAssembleEvent event) {
        SimulatedContraption contraption = event.getContraption();
        // e.g., calculate custom mass modifier
        float customMass = contraption.getMass() * 0.8f;
        contraption.setMassOverride(customMass);

        System.out.println("Contraption assembled with " +
            contraption.getBlocks().size() + " blocks.");
    }

    @SubscribeEvent
    public static void onDisassemble(ContraptionDisassembleEvent event) {
        // Cleanup any custom data attached to this contraption
        MyContraptionData.remove(event.getContraption().getId());
    }
}

Aeronautics — Flight Mechanics

Propeller Configuration (In-Game)

Propellers are directional. Place them facing the direction you want thrust:

  • Facing down → upward lift
  • Facing back → forward thrust
  • Speed (RPM) fed by Create's rotational network controls thrust magnitude

Hot Air Balloon

  1. Place Balloon Canvas blocks in a dome shape above a heat source
  2. Connect a Blaze Burner below the opening
  3. Assemble — the trapped hot air provides buoyancy proportional to enclosed volume

Levitation Rock

  • Rare ore providing passive vertical lift
  • Useful for lighter-than-air vessels needing no fuel

Flight Control Pattern

// Example: Redstone-controlled pitch adjustment via a custom block entity
public class FlightControllerBlockEntity extends BlockEntity {

    public FlightControllerBlockEntity(BlockPos pos, BlockState state) {
        super(MyModBlockEntities.FLIGHT_CONTROLLER.get(), pos, state);
    }

    public void applyPitchInput(SimulatedContraption contraption, float pitchDelta) {
        // Torque around the X-axis to pitch the vehicle
        org.joml.Vector3f torque = new org.joml.Vector3f(pitchDelta * 100f, 0, 0);
        contraption.getPhysicsBody().applyTorqueImpulse(torque);
    }
}

Offroad — Land Vehicles

Wheel Setup

  1. Place Wheel blocks at the four corners of your vehicle chassis
  2. Each wheel needs rotational input from Create's shaft network
  3. Assemble the contraption — wheels automatically detect ground contact

Suspension

Wheels simulate suspension travel. Stiffer suspensions use more rigid Create structural blocks near the wheel mounts.

Steering

Connect Create's Rotation Speed Controller to front wheels to implement steering differentials.


Configuration

Config files generate in config/ on first run:

# simulated-common.toml

[physics]
  # Physics simulation tick rate (ticks per second, default 20)
  simulationRate = 20
  # Maximum contraption block count before performance warnings
  maxContraptionSize = 2048
  # Enable contraption–contraption collision
  contraptionCollision = true

[aeronautics]
  # Propeller force multiplier
  propellerForceScale = 1.0
  # Hot air buoyancy multiplier
  hotAirBuoyancyScale = 1.0

[offroad]
  # Wheel traction coefficient
  wheelTraction = 0.85
  # Maximum vehicle speed (blocks/second)
  maxVehicleSpeed = 40.0

Localization / Translations

The project uses Crowdin for community translations.

Adding a New Language

  1. Join the Crowdin project
  2. Translate strings in the web UI
  3. Translations are automatically pulled into the repo

Adding Keys Programmatically

// In your lang JSON: src/main/resources/assets/mymod/lang/en_us.json
{
  "block.mymod.my_thruster": "Hyperdrive Thruster",
  "block.mymod.my_thruster.tooltip": "Applies directional thrust to assembled contraptions.",
  "mymod.contraption.overloaded": "Contraption mass exceeds safe limits!"
}

Common Patterns

Pattern 1: Fuel-Gated Thrust

@Override
public Vector3f getForce(SimulatedContraption contraption, BlockPos localPos, Level level) {
    // Only provide thrust if a fuel item is present in an adjacent chest
    BlockEntity adjacent = level.getBlockEntity(localPos.above());
    if (adjacent instanceof net.minecraft.world.level.block.entity.ChestBlockEntity chest) {
        boolean hasFuel = !chest.isEmpty(); // simplified check
        if (hasFuel) {
            return new Vector3f(0, 0, 800.0f);
        }
    }
    return new Vector3f(0, 0, 0);
}

Pattern 2: Speed-Based Thrust Scaling

@Override
public Vector3f getForce(SimulatedContraption contraption, BlockPos localPos, Level level) {
    // Scale thrust with Create rotational speed at this block's position
    float rpm = contraption.getRotationalSpeedAt(localPos);
    float thrust = rpm * 2.5f; // tune this constant for your use case
    return new Vector3f(0, 0, Math.min(thrust, 2000.0f)); // cap at max
}

Pattern 3: Custom Physics Data per Contraption

import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

public class MyContraptionData {
    private static final Map<UUID, Float> fuelLevels = new HashMap<>();

    public static float getFuel(UUID contraptionId) {
        return fuelLevels.getOrDefault(contraptionId, 100.0f);
    }

    public static void consumeFuel(UUID contraptionId, float amount) {
        float current = getFuel(contraptionId);
        fuelLevels.put(contraptionId, Math.max(0, current - amount));
    }

    public static void remove(UUID contraptionId) {
        fuelLevels.remove(contraptionId);
    }
}

Troubleshooting

SymptomLikely CauseFix
Contraption won't assembleMissing dependency mod (Create, Sable)Verify all deps in mods/
Vehicle sinks through floorWheel blocks not receiving rotationCheck shaft connections
Extreme jitter / vibrationToo many conflicting force providersBalance thrust/lift forces; reduce propellerForceScale in config
Crash on assemblyBlock count exceeds maxContraptionSizeIncrease limit in config or reduce vehicle size
Translations not showingWrong lang file pathEnsure assets/<modid>/lang/en_us.json path is correct
Physics desync on multiplayerHigh server TPS dropLower simulationRate or reduce contraption count
ClassNotFoundException on IForceProviderAPI jar not in classpathAdd simulated-api to build.gradle dependencies

Dependency Setup in build.gradle

dependencies {
    // NeoForge
    implementation "net.neoforged:neoforge:${neoforge_version}"

    // Create mod (via cursemaven or modrinth maven)
    implementation fg.deobf("com.simibubi.create:create-${minecraft_version}:${create_version}:slim") {
        transitive = false
    }

    // Create Simulated API (once published to maven)
    implementation "com.aeronautics:simulated-api:${simulated_version}"
}

Community & Support

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.91%
按下载量换算457

Claude

29.25%
按下载量换算372

Cursor

20.4%
按下载量换算259

Gemini CLI

9.96%
按下载量换算127

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills