aksync — FiveM用の天候・時間同期リソース
概要
aksyncは、FiveMサーバー用に設計された天候と時間の同期(resource)です。元となるvSyncのアイデアを受け継ぎつつ、lance-race向けに挙動を改善・拡張したバージョンで、重み付けされた動的天候(Weighted Dynamic Weather)や時間の同期をシンプルに実現します。サーバー側で天候や時刻を決定し、クライアントへ通知して統一された環境を維持する仕組みで、設定ファイル(config.lua)で天候の発生確率や遷移ルール、時間の進行速度などをカスタマイズ可能。プラグイン的に他スクリプトと併用でき、導入が容易な軽量設計が特徴です。(約300字)
リポジトリの統計情報
- スター数: 2
- フォーク数: 0
- ウォッチャー数: 2
- コミット数: 3
- ファイル数: 9
- メインの言語: Lua
主な特徴
- 重み付きの動的天候(Weighted Dynamic Weather)により発生確率を柔軟に設定
- サーバー主導の時間・天候同期で全クライアントの環境を統一
- 軽量でシンプル、他スクリプト(例:レースやイベント)に組み込みやすい
- config.luaで挙動を細かく制御可能(時間進行、天候遷移、頻度など)
技術的なポイント
aksyncはFiveMの典型的なサーバー–クライアント構成に従い、サーバー側で時間と天候の状態を決定し、イベントやネットワークメッセージでクライアントへ伝播する設計です。天候の選定には「重み(weight)」を用いることで、例えば晴れを高確率に、嵐を低確率にするなど現実味のある頻度調整が可能です。config.luaが中心的な設定ファイルになっており、天候ごとのウェイト、遷移ルール、時間の進行速度、同期間隔といったパラメータがここで定義されます。
クライアント側(clientディレクトリ)は受信した天候・時刻情報を受け取り、ゲーム内APIを通じて天候設定やタイムスケールを適用します。実装はLuaで簡潔にまとめられており、FiveMの資源管理(fxmanifest等)を利用した導入が容易です。vSyncのオリジナルに敬意を払いながら、lance-race向けに不要な複雑さを排した改良が施されており、他のスクリプトと干渉しにくい設計になっています。
運用面では、サーバーの時間・天候決定ロジックを拡張して特定イベント時のみ天候を強制する、あるいは管理者コマンドで強制変更するなどのカスタマイズがしやすくなっています。また、通信量と同期頻度をバランスさせることで多数クライアント環境でも負荷を抑える工夫が見られます。ソースのシンプルさは学習コストを下げ、独自機能の追加やデバッグを容易にします。(約700〜900字相当)
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitattributes: file
- LICENSE: file
- README.md: file
- client: dir
- config.lua: file
…他 4 ファイル
まとめ
シンプルで拡張しやすいFiveM向け天候・時間同期リソース。導入とカスタマイズが容易です。(約50字)
リポジトリ情報:
- 名前: aksync
- 説明: Simple FiveM weather and time sync resource.
- スター数: 2
- 言語: Lua
- URL: https://github.com/yigitlance/aksync
- オーナー: yigitlance
- アバター: https://avatars.githubusercontent.com/u/73574879?v=4
READMEの抜粋:
Aksync
aksync is an improved version of vSync specially for lance-race but it can be used for other scripts too.
Simple, weighted weather and time sync for FiveM with a few extra features.
Credits to Vespura for the original vSync.
Current version: 1.3.2
Author: lance(aksy)
Features
- Weighted Dynamic Weather: Weather changes based on realistic? (and configurable) weights. Sunny days are more likely, but you decide the odd…