Expeditions and idle timers that keep running while the game is closed: requirement reports as data, outcome tiers, reward rolls, slots, speed-ups and repeats. Saving is a single string.ENGLISHExpedition & Idle Timer SystemExpeditions in a naval game, gathering in an idle game, dispatch quests in a mobile RPG. Handing characters over, waiting in real time and collecting a reward that depends on who was sent looks simple from the outside, and turns into a tangle the moment you write it: offline progress, requirement checks, outcome tiers, slots, speed-ups and saving all pull on one another. This package is that whole tangle, driven by data.WHAT IT DOES- It keeps running while the game is closed. The end time is a real-world UTC timestamp, so the hours spent away arrive as the result of a subtraction. There is no offline code to write, and no special handling on resume.- Nothing ticks. No Update, no coroutine, no timer object per run: progress is computed from the current time on demand, so a hundred expeditions cost what one does.- What is missing comes back as data. "Three needed, two present" arrives as the value demanded and the value achieved - not as a sentence - which leaves both the wording and its localisation to you. Five kinds of condition are supported: party size, size limit, total level, a floor for each member, and a count of members carrying a tag.- Tags are your words. A ship class, a job, a trait, an element: whatever your characters already carry becomes a requirement without a line of code.- Outcome tiers multiply the haul. Satisfy more and a better tier applies, scaling rewards and experience and adding bonuses of its own, with as many tiers as you care to define. The tier settles at the moment of departure, so levelling up while they are away cannot rewrite it - which keeps the thinking on the party you choose before sending it.- Rewards roll three ways: each row on its own chance, exactly one row by weight, or everything guaranteed. The package settles what and how many; putting it into your inventory is one method you implement, so your caps, your stacking and your pop-ups stay yours.- Each member contributes. "Better cargo gear brings back more" is a single float on the character.- The idle-game staples are present: more slots, recalling early, speeding up by an item or an advert, sending the same party straight back out on claiming, and settling everything that came home at once.- The clock is an interface. Device time, server time, or a fixed time in a test - one line each. Which is why "eight hours later" is verified without waiting for it.- Saving is a single string. One JsonUtility line into PlayerPrefs, a JSON file, or one more field in the save you already have.IS IT CUSTOMIZABLE?Yes, in the three places that decide whether a package can enter a project that already exists.It does not know your characters. Implement one small interface - id, name, level, tags, availability, bonus - and your existing class can be sent on an expedition. A thin adapter is enough where you would rather not touch it.It has no UI. The look of the board, the format of a timer, the way a return announces itself: those are the character of your game. The package returns the time left, the progress and the verdicts, and the demo shows a complete worked example of drawing them.It performs no networking. Nothing here needs a server, so it suits an offline game as it stands - and where server time matters, the socket to plug it into is already there.TRY IT IN THREE MINUTESA showcase scene is included. One menu click builds it; pressing Play auto-runs fourteen captioned scenes covering every feature, looping forever with no input. The showcase plugs in a clock running at 420x, so a thirty-minute expedition comes home in about four seconds - itself a demonstration of the design. The demo contains no imported image, audio clip or font. A self-check menu runs 151 checks in memory, waiting not one second of real time, and prints the result to the Console.----------------------------------------------------------------JAPANESEExpedition & Idle Timer System『艦これ』型の遠征、放置ゲームの採集、ソシャゲの派遣クエスト。キャラクターを預けて実時間を待ち、誰を出したかに応じた報酬を受け取る——遊ぶ側には単純に見えて、作り始めるとオフライン経過・条件判定・成果の段階・枠・時短・セーブが絡み合う厄介な部分です。このアセットは、その全部をデータ駆動で引き受けます。できること・アプリを閉じていても進みます。終了時刻を実世界の時刻(UTC)で持つため、閉じていた時間は引き算の結果として自動的に反映されます。オフライン専用の処理も、復帰時の特別処理も要りません。・何も回りません。Update もコルーチンも、遠征ごとのタイマーオブジェクトも不要です。進捗は「今の時刻」から毎回計算するので、100 件走っていても負荷は 1 件と同じです。・足りない条件はデータで返ります。「3 人必要なのに 2 人」が要求値と現在値の組で返るため、表示の文面も多言語化も購入者の自由です。条件は人数・上限人数・合計レベル・ひとりあたりの下限・タグの人数の 5 種類。・タグは購入者の言葉です。艦種でも職業でも属性でも、キャラクターが既に持っている言葉がそのまま条件になります。・成果の段階が報酬に倍率を掛けます。条件を満たすほど良い段階になり、追加報酬も付きます。段階はいくつでも作れます。段階は出発の瞬間に確定するため、待っている間にレベルを上げても結果は変わりません——「出す前に編成を考える」というゲーム性が守られます。・報酬の配り方は 3 通り。個別抽選・重み付きで 1 つ・全部確定。何をいくつまでをアセットが決め、インベントリへ入れるのは購入者のメソッド 1 つです(所持上限もスタックも通知演出も購入者のルールのまま)。・メンバーの寄与。「輸送装備を積むほど多く持ち帰る」がキャラクター側の値 1 つで書けます。・放置ゲームの定番、ひと通り。枠の拡張・早期帰還・時短(アイテム/広告)・精算後の自動再出発・溜まった帰還の一括精算。・時計はインターフェースです。端末の時計・サーバー時刻・テスト用の固定時刻を 1 行で差し替えられます。だから「8 時間後」を実際に待たずに検証できます。・セーブは文字列 1 本。JsonUtility で 1 行。PlayerPrefs・JSON ファイル・既存セーブへの 1 項目追加のどれでも。Q: カスタマイズできますかA: はい。既存プロジェクトに入れられるかを決める 3 箇所で可能です。ID・名前・レベル・タグ・出撃可否・寄与を返す小さなインターフェースを 1 つ実装すれば、既存のクラスがそのまま遠征に出せます。触りたくない場合は薄いアダプタで十分です。UI を持ちません。一覧の見た目もタイマーの書式も帰還通知の出し方もゲームの個性です。本アセットは残り時間・進み具合・判定結果を返し、描画例はデモに丸ごと入っています。通信も行いません。サーバーを必要としないのでオフラインゲームにそのまま使え、サーバー時刻を使いたい場合の差し込み口だけ用意してあります。実演シーンを同梱しています。メニュー 1 クリックで構築し、再生するだけで 14 場面が字幕付きで自動再生されます(操作不要・無限ループ)。実演は時計を 420 倍速に差し替えているため 30 分の遠征が約 4 秒で帰ってきます——これ自体が設計の実演です。デモには画像・音声・フォントを 1 つも含みません。自己診断メニューは 151 項目をメモリ上で検証し(実時間の待ちはゼロ)、結果を Console に出力します。ENGLISHFeatures:- Expeditions as ScriptableObjects: duration in hours, minutes and seconds, requirement, reward table, experience, outcome tiers and prerequisite expedition ids- Boards grouping expeditions into areas or chapters, registered with one call- Five requirement kinds - party size, size limit, total level, minimum level for each member, and a count of members carrying a tag - evaluated into a report of per-condition demanded-versus-achieved values- Outcome tiers with their own requirement, reward multiplier, experience multiplier and bonus reward table; the first satisfied tier wins and is recorded at departure- Reward tables in three roll modes - independent chances, one weighted pick, everything guaranteed - with amounts scaled by a multiplier and never rounded down to nothing- A per-member reward contribution summed across the party- Expedition service covering departures, progress, remaining time, completion polling, claiming, claim-all, cancelling, speeding up, slot count, unlocking by completions, saving and resetting- Events for state changes, noticed returns and settled claims- Duration formatting in three styles (1:05:30, 1h 05m, 1h) and progress as a percentage- Stores for memory, PlayerPrefs and a JSON file, behind one interfaceExtensibility:- IExpeditionMember adapts the characters you already have; ids are plain strings- IExpeditionClock supplies the time - device, server or a test clock- IExpeditionRewardHandler receives what was won, leaving the inventory to you- A random source can be injected, which makes reward rolls reproducible in tests- State serialises with JsonUtility, so it drops into an existing save as one more fieldDependencies and compatibility:- Unity 2022.3 LTS or newer; no additional packages and no third-party plugins- No networking of any kind; usable in a fully offline game- Works with either input backend; the asset reads no input- 2D and 3D alike; the asset draws nothing- Assembly definitions isolate runtime, samples, demo and demo editor codeIncluded:- Full C# source, nine runtime files- Four minimal samples: a member implementation, a reward handler, an expedition board UI, and a "while you were away" report- A showcase scene generated from one menu click, using no imported image, audio or font asset- A self-check menu running 151 checks and printing the result to the Console- Documentation in English and Japanese, including XML documentation comments and inspector tooltips in both languages----------------------------------------------------------------JAPANESE機能:・遠征は ScriptableObject(時・分・秒の所要時間/条件/報酬テーブル/経験値/成果段階/前提遠征 ID)・遠征をまとめる一覧(海域・章)。登録は 1 行・条件 5 種類(人数・上限人数・合計レベル・ひとりあたりの下限・タグの人数)。判定結果は条件ごとの「要求値と現在値」のレポートとして返ります・成果の段階(固有の条件・報酬倍率・経験値倍率・追加報酬)。最初に満たした段階が採用され、出発時に記録されます・報酬テーブル 3 方式(個別確率/重み付きで 1 つ/全部確定)。倍率で増減し、基本値が 1 以上なら 0 個にはなりません・メンバーごとの寄与をパーティー全員ぶん合計・進行管理(出発・進捗・残り時間・帰還の検出・精算・一括精算・早期帰還・時短・枠数・完了数による解放・保存・リセット)・イベント(状態変化/帰還の検出/精算の完了)・残り時間の表記 3 種類(1:05:30 / 1h 05m / 1h)と進捗のパーセント表示・保存先はメモリ/PlayerPrefs/JSON ファイル。1 つのインターフェース越し拡張性:・IExpeditionMember で既存のキャラクターを接続。ID は素の string・IExpeditionClock が時刻を供給(端末・サーバー・テスト用)・IExpeditionRewardHandler が獲得物を受け取り、インベントリの扱いは購入者側・乱数源を注入可能。報酬抽選をテストで再現できます・状態は JsonUtility で直列化。既存セーブに 1 項目足すだけで組み込めます依存と互換性:・Unity 2022.3 LTS 以降。追加パッケージ・外部プラグイン不要・通信機能を一切持ちません。完全なオフラインゲームでも使えます・どちらの入力バックエンドでも動作(入力を読みません)・2D / 3D 双方(描画を行いません)・アセンブリ定義で本体・サンプル・デモ・デモ用エディタを分離収録:・フル C# ソース(本体 9 ファイル)・最小サンプル 4 本(メンバー実装/報酬の受け取り/遠征一覧 UI/留守中の成果画面)・メニュー 1 クリックで生成される実演シーン(画像・音声・フォントの持ち込みゼロ)・151 項目の自己診断メニュー(結果は Console へ出力)・英語/日本語のドキュメント(XML コメント・インスペクタのツールチップも日英併記)AI (Claude by Anthropic) was utilized as an engineering assistant during the package creation process for the following tasks:1. Refactoring and modularizing C# code to ensure high quality, loose coupling, and framework-agnostic design.2. Generating documentation drafts, API reference guides, and English/Japanese README files.All system architecture, logic design, functional requirements, and final code reviews were explicitly defined and verified by human hands. The package has been thoroughly compiled and tested within Unity to guarantee stability and performance.




