約 3,427,600 件
https://w.atwiki.jp/mc_memo/pages/34.html
編集 Minecraft MOD おすすめset 前提MODMinecraftForge / 軽量MODOptiFine 変態向けMODセット(1.10.2) Infernal Mobs Epic Siege Mod Zombie Awareness Lycanite s Mobs Primitive Mobs ディアブロ風エンチャントをモンスターに付与、モンスター行動強化、襲撃イベントの追加、クリーパーテロ、動物凶暴化
https://w.atwiki.jp/rockband/pages/182.html
Artist Song title Year Genre Difficulty MSP The Taj Motel Trio OaOaO 2007 Rock 80 Taproot Fractured (Everything I Said Was True) 2010 Rock 160 Teenage Bottlerocket Bigger than Kiss 2011 Punk 80 Skate or Die 2009 80 Teflon Don feat. Antonio Cooke 3 in the Morning 2010 Rbsoulfunk 160 Terra Terra Terra Transmission Lost 2009 Alternative 80 Terror Stick Tight 2010 Punk 160 Terrorhorse Magnolia 2010 Metal 160 Magnolia(2x Bass Pedal) 2010 160 Modern Mathematics 2010 80 Packet Flier 2009 80 TesseracT Deception–Concealing Fate Part Two 2011 Progressive ? Deception–Concealing Fate Part Two(2X Bass Pedal) ? Eden 2011 ? Testament Henchmen Ride 2008 Metal 160 Tetrafusion Last Chance 2010 Progressive 160 Texas in July Elements 2009 Metal 80 Hook, Line, and Sinner 2009 80 Hook, Line, and Sinner (RB3 version) 2009 160 Hook, Line, and Sinner (RB3 2x Bass Pedal) 2009 160 Magnolia 2011 80 Magnolia(2x Bass Pedal) 80 Uncivilized 2010 160 There For Tomorrow A Little Faster 2009 Alternative 160 These Hearts Apology Rejected 2011 Rock 160 These Three Poisons Light Up The Eyes 2009 Metal 80 Third Eye Blind Jumper 09 2009 Alternative 160 Never Let You Go 09 2009 Rock 160 Semi-Charmed Life 09 2009 160 This or the Apocalypse Lamnidae 2010 Metal 160 Thomas Walker Bagatelle No.25–Für Elise(Beethoven) 2011 Classical 80 The Entertainer (Joplin) 2011 80 Flight of the Bumblebee(Rimsky-Korsakov–Piano Version) 2011 80 Gymnopédie No.1(Satie) 2011 80 Piano Sonata No.11–Ronda Alla Turca(Mozart) 2011 80 Piano Sonata No.14–Moonlight Sonata(Beethoven) 2011 80 Those Among Us Disco Ball 2010 Rock 80 I Thought I Knew You 2010 New Wave 80 The Final Hour 2011 80 Thunder and Lightning Horizon 2010 Metal 160 Thunderdikk Bra Off Party On 2009 Rock 80 Tijuana Sweetheart No Mercy 2009 Punk 80 Trash Candy 2009 80 Timeless Miracle Curse of the Werewolf 2005 Metal ? Curse of the Werewolf(2x Bass Pedal) ? Tina Guo Forbidden City 2011 Metal 160 Queen Bee 2011 160 Tiny Danza Beat Fly 2011 Hip Hop/Rap ? Todd Thibaud Three Words 2005 Country 80 Tokyo Raid Indulgence 2011 Rock 160 The Tragically Hip Blow at High Dough 1989 Rock 240 The Trews Hold Me In Your Arms 2008 Rock 80 Hope Ruin 2011 80 The Trews People of the Deer 2011 Rock 80 Trucker Diablo Drink Beer, Destroy 2011 Rock 160 Tumbledown Homeward Bound 2009 Country 80 Turrigenous A Slight Amplification 2008 Metal 80 Twin Atlantic Audience and Audio 2009 Alternative 80 What Is Light? Where Is Laughter? 2009 80 Twintapes Young 2009 Indie Rock 80
https://w.atwiki.jp/zzzhonki/pages/306.html
Among Us 『Among Us』は、InnerSlothによって開発されたオンラインマルチプレイヤー・ソーシャルディダクションゲーム。読み方は「アマンガス」、一般的な略称は「ンガス」もしくは「ア」。通称「宇宙人狼」とも呼ばれる。 2018年にPC、スマートフォン向けにリリースされた。本作が大ヒットしたのは2020年のことであり、TwitchやYoutubeでの再生数は40億を超えている。 ゲーム内にテキストチャットは存在するが、ボイスチャットは存在しないため、DIscord、TeamSpeak、Skype、LINE、糸電話、拡声器、念話などの外部ボイスチャットが必須である。しかし、外部ボイスチャットが不要なほどの声量を発揮するプレイヤーも存在する。 ゲームは人狼と同じような物であり、村人役の「Crewmate(クルーメイト)」と人狼役の「Impostor(インポスター)」に分かれてプレイする。Crewmateはタスクと呼ばれる作業(配線を直す、カードをガチのマジの1発でスキャンする、ダイヤモンドを捨てる、青色を吊るなど)を全員がクリアする、もしくはImposterを全滅させれば勝利である。 Imposter側はCrewmateをImposterと同数まで減らすか、Crewmateが一部緊急タスクを制限時間内に達成できなかった場合勝利する。 ゲームの流れ(参考 ピクシブ百科事典 ) 本作は作業フェイズと会議フェイズを交互に繰り返してプレイし、自陣営の勝利を目指すゲームである。 作業フェイズ このフェイズではCrewmateとImposterが同一マップ内を徘徊する。Crewmateは与えられたタスクをImposterに殺されないように淡々とこなす。タスクの位置はマップ上に表示される。 ImposterはCrewmateを殺害するかサボタージュという破壊工作でCrewmateを妨害する。サボタージュはドアを閉めたり、緊急タスクを発生させる。 CrewmateとImposterはCrewmateの死体に対してレポート(緊急通報)することができる。レポート後、会議フェイズへ移行する。 重要なポイントとして、死亡、追放された場合もGhost(幽霊)としてフィールド上にとどまる。Crewmateは死んでもタスクを完遂せねばならず、追放されたImposterもサボタージュで生き残ったImposterを支援することができる。ただしキルすることはできない。 会議フェイズ このフェイズではボイスチャットが解禁され、誰が死んでいるかを把握できる。死者は会議に参加することができない。 このフェイズでは投票が行われ、投票の結果誰が吊られるか決定する。投票をSKIPすることもできる。 Imposterを吊る唯一のチャンスであり、互いに情報を提供し、逆に偽の情報を流し、疑心暗鬼の中駆け引きが行われる。このゲーム最大の見所である。 ゲームのマップ 現在4種類のマップがある。マップは作業フェイズ中確認できるが会議フェイズ中はゲーム内で確認できないため注意。 ゲーム内のマップは部屋名以外にタスクの位置が表示される。ベントの接続は表示されない。ただし、通信妨害によって破壊されるとマップに残りのタスクが表示されなくなる。Imposterはマップにダミーのタスクが表示される。実際にタスクは実行できないので注意。「タスクできないんだけど」などと言おうものなら即吊りされるので危険。 スケルド号(The Skeld)宇宙船内のマップ。左右に広い。標準的なマップ 管理室、監視カメラがある。 ミラ本部(MIRA HQ)高層ビルのマップ。左右の移動に中央の道を使う必要がある。 ベント移動の自由度が高い。 監視カメラがないが、ドアの通過記録を確認できる。 ポーラス(Polus)惑星のマップ。全体的に広い。 監視カメラの範囲が広いが1画面ずつしか確認できない。閉じられたドアを開くためにタスクが必要。 生存を確かめる生体反応がある。酸素破壊が存在しない。 飛行船(The Airship)飛行船のマップ。時間のかかるタスクが多い。 監視カメラや生体反応についてや、酸素破壊がないのはポーラス同様。 閉じられたドアを開くためにカードスキャンが必要。(但し今までと異なり、どんなにゆっくりスキャンしても開けられる) 最初と会議後に、初期位置候補が3カ所ランダムで選ばれ、その中から1カ所を選んで始める。(このときマップは見れない。) (通信妨害がインポスターが直せず、幽霊が直せるという致命的なバグがある。)修正済 など、今までにない特徴が多い。 画像を後で用意 (マップの画像は Among Us攻略Wiki マップガイド から引用。 CC-BY-SA3.0ライセンス下で利用可能) アビリティとサボタージュ アビリティ Admin(管理室)Admin(The AirshipではCockpit)にてアクセス可能。すべてのマップにある。 通路以外の全ての部屋にいるプレイヤーの数がわかる。そこにいるプレイヤーが誰かは分からない。死体もカウントされる。 Security(監視カメラ)Securityにてアクセス可能。MIRA HQ以外のマップにある。 限られた領域の現在の様子をリアルタイムに確認できる。 Doorlog(ドア通過記録)communicationにてアクセス可能。MIRA HQにのみある。 3つのドアがどの順番で、誰が使用したかを確認できる。 Vitals(生体反応)PolusではOffice、The AirshipではMedicalにてアクセス可能。他のマップにはない。 どのプレイヤーが生存しているかリアルタイムに確認できる。 サボタージュ 酸素遮断The Skeld、MIRA HQにある。 2か所にパスワードを入力するタスク。 時間内にタスク完了しないとImposterの勝利 リアクターメルトダウン(Polusでは地殻安定装置)(The Airshipでは衝突航路回避)すべてのマップにある。 二人が別々の場所にある装置を同時に押す(The Airshipでは一定の時間差以内に数字を入力する)タスク。 時間内にタスク完了しないとImposterの勝利 停電すべてのマップにある。 Electrical(MIRA HQはOffice)(The Airshipでは3カ所のどれでも)のレバーを全てONにするタスク。 視界が極端に狭くなるが無視することは可能。Imposterは影響を受けない。 通信妨害すべてのマップにある。 ラジオの波長を合わせるタスク。MIRA HQでは2か所にパスワードを入力する。 Adminなどのアビリティが使用不可になり、マップ上にタスクが表示されなくなるが無視することは可能。 ドア閉鎖すべてのマップで使用可能。 The Skeld、MIRA HQではドアを10秒間閉鎖する。クールタイムは17秒(ドアが開いてから再び閉じられるようになるまで7秒) Polus、The Airshipではドアのタスクを完了しない限り開かない。 CrewmateとImposterのできることと勝利条件 Crewmateができること タスクの実行 死体の通報 緊急会議の招集 Crewmateの勝利条件 タスクを全員完了する Imposterを全員排除する Imposterのできること Crewmateの殺害 サボタージュの実行 死体の通報 緊急会議の招集 ベントを使った移動 Imposterの勝利条件 CrewmateをImposterと同数まで減らす 酸素やリアクターの時間切れ 死体の扱い 死体はCrewmateもImposterも通報できる。そのためImposterの自演通報が可能である。 死体はAdminで人数分にカウントされる。一人で動かない場合怪しむとよいだろう。 死体は会議フェイズで消滅する。つまり、誰かが死体を通報したり、緊急会議が始まると消滅するため注意が必要である。 死体が見えていなくても範囲内に入るとreportボタンが光る。それを押せば通報可能である。 ルール Among USはルールを細かく設定可能である。例えば、視界の広さ、移動速度、キルクールダウンの長さ、タスクの数、インポスターの人数、会議の時間などが変更可能である。 これらのルールを極端にすると暗闇鬼ごっこ、通り魔人狼などの別ゲーが遊べる。このゲームの魅力的なポイントである。 日本語化 有志が日本語化MODを作成している。しかし、Among Usのアップデートのたびに無効化されるなどの不具合がある。 そもそも現代人、特にぷーれリスナーは英語など余裕で読めるので導入方法はここに記載しない。 ※3/8追記 以前からswitch版などで公式に日本語対応していたが、ついにPC版で日本語がサポートされた。 しかし「日本語フォントダサい…」「今までの名称で馴れてしまった」などの意見もある。 ぷーれは日本語対応後のあまんがすで全く気付かずにプレイした。リスナーからアプデの話を持ち出されて初めて「本当だ、名前日本語の人いる」と反応した。 これは変化に鈍感だが時代に遅れずついていく、ぷーれという男を端的に表す出来事となった。流石、同じゲームを10年以上プレイし続ける男である。 カタカナ表記 Among Usは海外のゲームであり、日本語でカタカナ表記する際に表記ゆれが発生する。 例として「アマンガス」「アマングアス」「アモングアス」「アモングウス」などである。 実際に英語の発音を吟味してどの飛び方がネイティブに近いのか考察してみたいと思う。 まず、AmongとUsを別で発音する。 注意することに、ローマ字ではoはオ、uはウであるが、英語では文字通りの発音とはいかない。 アメリカ英語で「Among」は「əmˈʌŋ」、「Us」は「ˈʌs」である。発音記号ではわかりにくいので、思い切ってカタカナにすると、Amongは「アマング」「アマン」、Usは「アス」である。この時点で「アモングアス」「アマングウス」「アモングウス」の表記は不適切なことがわかる。 では、両者を合わせて「アマングアス」が正解ではないかと言いたくなるが、少し待ってほしい。 英語では単語の末が破裂音で、母音が続く場合1つの語として扱われる。「Among」のgは破裂音の一種である。続く「Us」のUは母音である。 つまり、「アマング」のグと「アス」のアがくっついて「ガ」になる。 よって、「Among Us」は「アマンガス」となる。実際にGoogle翻訳などに「Among Us」を入れて音声を聞いてほしい。「アマンガス」にしか聞こえないはずである。 ちなみに筆者は英検5級である。 (追記) 公式の発音が「アモングアス」であるとされたが、ぷーれ自身は「どうでもいいんですよ」とAmongUs読み方論争を一蹴しており、圧倒的貫録を見せつけた。 余談 ぷーれはImposter時にCrewmateの目の前でベントを使う、いわゆる「ベント芸」の先駆者である。さらにぷーれは、他プレイヤーがベント芸で笑いを取ってる中まさかの「キル芸」(目の前でキルする)を見せつけ""格""の違いを知らしめた。その時ぷーれは「承太郎がQキー押した」「俺は悪くない」「PCハッキングした奴がいる」と潔く散っていった。 会議フェイズ中、頻繁に部屋名が出てくる。(リアクターやストレージや香川など)しかし、放送を見ている視聴者にとっては暗号でしかない。そこでぷーれは会議中、マップを放送画面に映す。これに対して視聴者は「たすかる^~」「マップえらいね」「ハゲ」とぷーれに感謝する。しかし、ぷーれはマップを隠し忘れたまま会議フェイズを終了することがある。こうなっては放送画面はマップしか見えなくなるので視聴者は「マップマップマップマップマップ」「マップ隠せてえらいね」「ハゲ」「ぷーれはハゲ、青色は神」「ハゲ」とぷーれにやさしくマップの存在を知らせるのがテンプレとなっている。 ぷーれはImposter側で吊られそうになると「えっ、でもここでースーッ…ここで吊りミスったら…終わり…なんだよね…?え、ダブルキルで終わり…だよね?いや、別に自分吊るのは良いけどー」「皆さん騙されてますよ!チートですよチート!いいんですか?みなさん!?騙されてますよ!?」「ちがうちがうちがうキーボード暴発した、俺悪くないって」「俺じゃないって!俺のパソコンにハッキングしたやつがいる!」「ベントに入ったからってImposterとは限らなくないか?」「え、いや、僕はちがうとしか言えないけどぉ…」と冷静に無駄なあがきを見せるので必見である。 ちなみに筆者はエアプである。 カービィ勢Among Us 2021/1/3にカービィ勢によるAmong Usが行われた。(https //youtu.be/oSpNTBBAG2c) この日のゲーム結果を集計したところ以下のような成績となった。 Crewmate成績 参加者 回数 勝 負 生存 追放 死亡 勝率 生存率 追放率 死亡率 aleiku 6 4 2 2 1 3 66.7 33.3 16.7 50.0 aoiro2021 7 3 4 1 0 6 42.9 14.3 0.0 85.7 Cabbage 8 5 3 4 0 4 62.5 50.0 0.0 50.0 gema 4 3 1 2 0 2 75.0 50.0 0.0 50.0 MIKAN 7 6 1 1 1 5 85.7 14.3 14.3 71.4 mog 10 6 4 6 0 4 60.0 60.0 0.0 40.0 Moyashi 10 6 4 4 0 6 60.0 40.0 0.0 60.0 piyo 7 4 3 4 0 3 57.1 57.1 0.0 42.9 rycopin32 3 1 2 1 1 1 33.3 33.3 33.3 33.3 seria 9 5 4 3 0 6 55.6 33.3 0.0 66.7 zzzhonki 7 4 3 2 0 5 57.1 28.6 0.0 71.4 Imposter成績 参加者 回数 勝 負 生存 追放 殺害 勝率 平均殺害数 aleiku 4 2 2 2 2 9 50.0 2.3 aoiro2021 3 0 3 0 3 6 0.0 2.0 Cabbage 1 0 1 0 1 1 0.0 1.0 gema 2 1 1 1 1 3 50.0 1.5 MIKAN 3 3 0 3 0 7 100 2.3 mog 0 0 0 0 0 0 - - Moyashi 0 0 0 0 0 0 - - piyo 3 1 2 1 2 6 33.3 2.0 rycopin32 0 0 0 0 0 0 - - seria 1 0 1 1 0 2 0.0 2.0 zzzhonki 3 1 2 2 1 11 33.3 3.7
https://w.atwiki.jp/nihongorapsince85/pages/2.html
メニュー トップページ プラグイン紹介 メニュー 右メニュー リンク @wiki @wikiご利用ガイド ここを編集
https://w.atwiki.jp/shobominecraft/pages/69.html
Among us MOD導入について 注意事項 Among us MODについての注意事項を必ずお読みください。 PC版のみに対応しています。スマートフォン版、Switch版や別媒体とのクロスプレイには対応しておりません。 MODの配布場所はau.liblhalt.netにて行っております。二次配布などはお控えください。 導入方法 ※Among usをつけていない状態で以下の作業を行うこと。 1 Steamのゲームリストを開き、『Among Us』を右クリック 2 管理 > ローカルファイルを閲覧 をクリック 3 Among us.exeが存在するフォルダが開きます 4 展開したZIPファイルの中身を全て Among us.exeがあるフォルダと同じフォルダに入れる BeplnExフォルダ monoフォルダ changelog.txt doorstop_config.ini winhttp.ini 5 AmongUs を起動する。 ONLINEから右下の地球儀をクリックして任意のサーバーを選択 ※MOD導入後、初回起動の際起動に時間がかかる場合があります。 導入完了 MODを入れた皆で集まって遊ぼう
https://w.atwiki.jp/anime_wiki/pages/34100.html
ここを編集 ■彼女、お借りします (第2期) 作画監督 20(三・大・福・舘・黒・山) ■忍の一時 作画監督 10(首・セ・福・F・S) ■久保さんは僕を許さない 絵コンテ協力 1 ■絆のアリル 作画監督 24(新・簑・王・馬・林) ■関連タイトル Blu-ray 彼女、お借りします 第2期 vol.1 rakuten_design= slide ;rakuten_affiliateId= 053df7e0.7c451bd1.0c852203.190c5695 ;rakuten_items= ctsmatch ;rakuten_genreId=0;rakuten_size= 468x160 ;rakuten_target= _blank ;rakuten_theme= gray ;rakuten_border= on ;rakuten_auto_mode= on ;rakuten_genre_title= off ;rakuten_recommend= on ; 随時更新! pixivFANBOX アニメ@wiki ご支援お待ちしています! ムック本&画集新刊/個人画集新刊/新作Blu-ray単巻/新作Blu-ray DVD-BOX アニメ原画集全リスト スタッフインタビューwebリンク集 最新登録アイテム Switch ゼルダの伝説 Tears of the Kingdom Switch 世界樹の迷宮Ⅰ・Ⅱ・Ⅲ HD REMASTER Switch ピクミン 4 大友克洋 Animation AKIRA Layouts Key Frames 2 小説 機動戦士ガンダム 水星の魔女 1 ONE PIECE FILM REDデラックス・リミテッド・エディション 4K ULTRA HD Blu-ray Blu-ray 劇場版 ソードアート・オンライン -プログレッシブ- 冥き夕闇のスケルツォ 完全生産限定版 Blu-ray 映画『ゆるキャン△』 Blu-ray 【コレクターズ版】 Blu-ray ウマ娘 プリティーダービー 4th EVENT SPECIAL DREAMERS!! Blu-ray 天地無用!GXP パラダイス始動編 Blu-ray第1巻 特装版 天地無用!魎皇鬼 第伍期 Blu-ray SET 「GS美神」全話いっき見ブルーレイ Blu-ray ソードアート・オンライン -フルダイブ- メーカー特典:「イベントビジュアル使用A3クリアポスター」付 ラブライブ!虹ヶ咲学園スクールアイドル同好会 5th Live! 虹が咲く場所 Blu-ray Memorial BOX 宇宙戦艦ヤマト2202 愛の戦士たち Blu-ray BOX 特装限定版 地球へ… Blu-ray Disc BOX 完全生産限定版 神風怪盗ジャンヌ Complete Blu-ray BOX HUNTER×HUNTER ハンター試験編・ゾルディック家編Blu-ray BOX BLEACH Blu-ray Disc BOX 破面篇セレクション1+過去篇 完全生産限定版 MAZINGER THE MOVIE 1973-1976 4Kリマスター版 アニメ・ゲームのロゴデザイン シン・仮面ライダー 音楽集 テレビマガジン特別編集 仮面ライダー 完全版 EPISODE No.1~No.98 MOVIE リスアニ!Vol.50.5 ぼっち・ざ・ろっく!号デラックスエディション ヤマノススメ Next Summit アニメガイド おもいでビヨリ アニメ「魔入りました!入間くん」オフィシャルファンブック 『超時空要塞マクロス』パッケージアート集 CLAMP PREMIUM COLLECTION X 1 トーマの心臓 プレミアムエディション パズル ドラゴンズ 10th Anniversary Art Works はんざわかおり こみっくがーるず画集 ~あばばーさりー!~ あすぱら画集 すいみゃ Art Works trim polka-トリムポルカ- つぐもも裏 超!限界突破イラスト&激!すじ供養漫画集 開田裕治ウルトラマンシリーズ画集 井澤詩織1st写真集 mascotte 鬼頭明里写真集 my pace 内田真礼 1st photobook 「まあやドキ」 進藤あまね1st写真集 翠~Midori~ 声優 宮村優子 対談集 アスカライソジ 三石琴乃 ことのは 亀田祥倫アートワークス 100% 庵野秀明責任編集 仮面ライダー 資料写真集 1971-1973 金子雄司アニメーション背景美術画集 タローマン・クロニクル ラブライブ!サンシャイン!! Find Our 沼津~Aqoursのいる風景~ 機動戦士ガンダム 逆襲のシャア 友の会[復刻版] 梅津泰臣 KISS AND CRY 資料集 安彦良和 マイ・バック・ページズ 『機動戦士ガンダム ククルス・ドアンの島』編 氷川竜介 日本アニメの革新 歴史の転換点となった変化の構造分析 Blu-ray THE IDOLM@STER CINDERELLA GIRLS 10th Anniversary Celebration Animation ETERNITY MEMORIES Blu-ray おいら宇宙の探鉱夫 ブルーレイ版 Blu-ray 映画 バクテン!! 完全生産限定版 アイカツ! 10th STORY ~未来へのSTARWAY~ Blu-ray BOX 初回生産限定版 はたらく細胞 Blu-ray Disc BOX 完全生産限定版 Blu-ray 長靴をはいた猫 3作品収録 Blu-ray わんぱく王子の大蛇退治 Blu-ray 魔道祖師 完結編 完全生産限定版 魔道祖師Q Blu-ray Disc BOX 完全生産限定盤 にじよん あにめーしょん Blu-ray BOX 【特装限定版】 Blu-ray 鋼の錬金術師 完結編 プレミアム・エディション Blu-ray付き やはりゲームでも俺の青春ラブコメはまちがっている。完 限定版【同梱物】オリジナルアニメ Blu-ray「だから、思春期は終わらずに、青春は続いていく。」
https://w.atwiki.jp/nihongorapsince85/pages/5.html
更新履歴 @wikiのwikiモードでは #recent(数字) と入力することで、wikiのページ更新履歴を表示することができます。 詳しくはこちらをご覧ください。 =>http //www1.atwiki.jp/guide/pages/269.html#id_bf9eaeba たとえば、#recent(20)と入力すると以下のように表示されます。 取得中です。
https://w.atwiki.jp/ets2wiki/pages/25.html
ゲームシステム・環境構築ゲームシステム 環境改善 AI改善 Physics改善 ワールド トラクター編メーカー共通 DAF Iveco MAN Mercedes-Benz Renault Volvo トレーラー マップ その他 コメント ほとんど同じmodばかりだがたまにそこにしかない物もあったりする URL 備考 http //ets2.lt/en/ http //etsmods.net/ http //ets2mods.com/en/ http //pete379jp.s69.xrea.com/ 18輪皮置き場 ゲームシステム・環境構築 ゲームシステム 環境改善 AI改善 MOD名 AI Traffic Pack by Jazzycat v5.9 概要 AI車を新たに291種類追加するmod。 入手場所 1.28.x⇛ets2.lt 備考 MOD名 Bus Traffic Pack by Jazzycat v2.6 概要 AIの大型バスを追加したりデフォルトのAIバスの色を追加するMod。 入手場所 1.28.x⇛ets2.lt 備考 AIのバスを追加するMod。約27種類のバスと約324種類のスキンを追加する。 MOD名 Truck Traffic Pack by Jazzycat v2.8 概要 AIのセミトレーラー・フルトレーラー、単車(トラック)を追加するMod。 入手場所 1.28.x⇛ets2.lt 備考 MOD名 GTA IV Traffic Pack v 1.0 update 概要 GTA IVの車をAIに追加するmod。 入手場所 1.21.x⇛ets2.lt 備考 次の「Saints Row 3 traffic pack v3」とは現時点で同時に使用できないので注意が必要。 MOD名 Saints Row 3 traffic pack v3 概要 Saints Row 3の車をAIに追加するmod。 入手場所 1.19.x⇛ets2.lt 備考 前の「GTA IV Traffic Pack」とは現時点で同時に使用できないので注意が必要。 Physics改善 MOD名 Modfied Sawmill 概要 落ちている木材にあたり判定をつけるmod。 入手場所 1.20.x⇛ets2.lt 備考 ワールド トラクター編 メーカー共通 MOD名 BDF Tandem Truck Pack v38.0 概要 フルトラクタを追加するMod。 入手場所 1.19.x→etsmods.net 備考 フルトラクタを追加するMod。荷台のスキンは変更可能。 DAF MOD名 DAF XF Euro6 by ohaha (v1.44) 概要 DAFトラックのカスタムmod 入手場所 1.21.x⇛forum.scssoft.com 備考 DAFのディーラーに行き、「DAF XF Euro6 ohaha」を選択することで使える。スキンmodやサウンドmodは新たにこのmod専用に導入が必要。ets2.ltなどで、「DAF ohaha skin」などと検索し適用する必要がある。 Iveco MAN MOD名 MAN TGX Euro6 (v1.6) 概要 MANトラックの追加・カスタムmod 入手場所 1.23.x⇛forum.scssoft.com 備考 MANのディーラーに行き、「MAN TGX Euro6」を選択することで使える。スキンmodやサウンドmodは新たにこのmod専用に導入が必要。ets2.ltなどで、「MAN TGX Euro6 skin」などと検索し適用する必要がある。 注意 v1.6で右ハンドルを選択するとHUDミラー(F2ミラー)が左右逆に表示されるため、右ハンドルで乗る人はv1.5を使用すること。 Mercedes-Benz Renault MOD名 Scania R Streamline Modifications V1.5.1.1 概要 Scaniaトラックのカスタムmod 入手場所 1.23.x⇛forum.scssoft.com 備考 Scaniaのディーラーに行き、「Scania R(RJL)Normal」を選択することで使える。スキンmodやサウンドmodは新たにこのmod専用に導入が必要。ets2.ltなどで、「Scania rjl skin」などと検索し適用する必要がある。 MOD名 Scania T Mod V1.8.1.1 概要 Scania Tシリーズトラックを追加するmod。 入手場所 1.23.x⇛forum.scssoft.com 備考 Scaniaのディーラーに行き、「Scania T Normal」を選択することで使える。通常のものと比べて、トラックの形状が違うので、操作にはある程度の慣れが必要。#参考画像1 #参考画像2 実車の動画 Volvo MOD名 Volvo FH 2013 [ohaha] v19.6s 概要 Volvoトラックのカスタムmod 入手場所 1.23.x⇛forum.scssoft.com 備考 Volvoのディーラーに行って、「volvo ohaha」を選択することで使える。ただし、スキンmodやサウンドmodは新たにこのmod専用に導入が必要。ets2.ltなどで、「Volvo ohaha(もしくは2013) skin」などと検索し適用する必要がある。 トレーラー MOD名 Japan Trailers Traffic Pack v 3.0 概要 日本の企業のトレーラーを追加するmod。 入手場所 1.19.2.1⇛ets2.lt 備考 MOD名 Trailers and Cargo Pack by Jazzycat v5.5 概要 大量のトレーラーを追加するmod。合わせて8x4のAIトラクタも追加される。 入手場所 1.28.x⇛ets2.lt 備考 trailers_and_cargo_pack_by_Jazzycat_v5.5_part1.scstrailers_and_cargo_pack_by_Jazzycat_v5.5_part2.scstrailers_and_cargo_pack_by_Jazzycat_v5.5_eng.scsの3つのファイルをmodフォルダに入れて導入してください。 MOD名 Military Cargo Pack by Jazzycat v 1.7 概要 戦車など軍事車両系の荷物が運べるようになるmod。 入手場所 1.23.x→forum.scssoft.com 備考 military_cargo_pack_by_Jazzycat_v1.7_base.scsmilitary_cargo_pack_by_Jazzycat_v1.7_eng.scsの2つのファイルをmodフォルダに入れて適用してください。military_cargo_pack_by_Jazzycat_v1.7_traffic.scsを適用すると、AIトラックがこのmodのトレーラーを運搬するようになる。・v1.23でのタイヤ・ホイールおよび5軸以上のトレーラーの問題と注意点は"Trailers and Cargo Pack by Jazzycat"と同様。 MOD名 Railway Cargo Pack by Jazzycat v 1.7.1 概要 機関車・客車・貨車など鉄道車両系の荷物が運べるようになるmod。 入手場所 1.23.x→forum.scssoft.com 備考 railway_cargo_pack_by_Jazzycat_v1.7.1_base.scsrailway_cargo_pack_by_Jazzycat_v1.7.1_eng.scsの2つのファイルをmodフォルダに入れて適用してください。・v1.23でのタイヤ・ホイールおよび5軸以上のトレーラーの問題と注意点は"Trailers and Cargo Pack by Jazzycat"と同様。 MOD名 68 Roadhunter Trailers in One Pack Version 5.2 概要 重たくかつ大きいトレーラーを追加するmod。 入手場所 1.21.x⇛ets2.lt 備考 マップ MOD名 TruckSimMap 6.2 for Patch 1.22.x 概要 主に地中海周辺国を追加し、デフォルトMapにも少し変更を加えるmod。 入手場所 1.22.x→ets2.ltもしくはforum.scssoft.com 備考 v6.2からはGoing East! およびスカンジナビアのマップDLCが必要。解凍できない場合には7-Zipを使用してください。 MOD名 EAA Map v 2.8.3 概要 ブラジルMapを追加するMod。 入手場所 1.21.x→ets2.lt 備考 マップ系のDLCがあってもなくても使える。解凍時にパスワードを求められた場合は「#alwayseaa」と入力してください。 ProMods 有名なmod。細部に拘っている。v2.02はv1.23.xに対応・Going East! およびスカンディナビアDLCが必要。このページからregisterでアカウントを作成、ログインしDownloadからダウンロード。・v2.02についてはHotfix2、またはHotfix3が必要。 その他 MOD名 Brutal Environment HD + Sound + Engine Gold 2015 for 1.21.x 概要 いろいろ改善するmod。詳しくは備考を見てください。 入手場所 1.21.x⇛ets2.lt 備考 ONLY HD ENGINE→グラフィック改善。FPSが10%向上する。HDRはONにし、色補正はOFFにしてください。ONLY SOUND ENGINE→ゲーム内の音を変更する。ONLY EXTERNAL VOLUME UP→車内にいるときの外の環境音を大きくする。優先度を最大にして使用してください。BRUTAL ADVISER→ルートアドバイザーなどの表示位置の変更。NO DAMAGE + FREE TOLGATE→ダメージを受けなくなる。料金所のバーが消える。 コメント
https://w.atwiki.jp/akasatanahama/pages/19.html
概要 何の機能もない基本的なアイテムを追加する。 ソースコード AluminiumMod.java package tutorial.aluminiummod; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = "AluminiumMod", name = "Aluminium Mod", version = "1.0.0") public class AluminiumMod { //追加するアイテムの宣言 public static Item aluminium; @EventHandler public void preInit(FMLPreInitializationEvent event) { //Itemのインスタンスを生成し、代入する。 aluminium = new Item() //クリエイティブタブの登録 .setCreativeTab(CreativeTabs.tabMaterials) //システム名の登録 .setUnlocalizedName("aluminium") //テクスチャ名の登録 .setTextureName("aluminiummod aluminium"); //GameRegistryへの登録 GameRegistry.registerItem(aluminium, "aluminium"); } } 解説 AluminiumMod void preInit(FMLPreInitializationEvent event) modが読み込まれるとき最初に行われる処理。 アイテムやブロックの追加をする。 @EventHandlerをつける。 Mod String modid, String name, String versionなど modのコアクラスをFMLに登録するためのアノテーション。 modidは必須。nameとversionは、modsリストで表示される。 Item minecraftのアイテムはすべてこのクラスを継承している。 modで追加するアイテムもこのクラスを継承することになる。 Item setCreativetab(CreativeTabs tab) アイテムをクリエイティブタブに登録するメソッド。 バニラのクリエイティブタブはCreativeTabsにまとめられている。 +バニラのクリエイティブタブの一覧 tabBlock・・・建築ブロック tabBrewing・・・醸造 tabCombat・・・戦闘 tabDecorations・・・装飾ブロック tabFood・・・食料 tabMaterials・・・材料 tabMisc・・・その他 tabRedStone・・・レッドストーン tabTools・・・道具 tabTransport・・・移動 Item setUnlocalizedName(String name) アイテムのシステム名を登録するメソッド。 Item setTextureName(String name) アイテムのテクスチャ名を登録するメソッド。 テクスチャ名は、"小文字のmodid ファイル名(拡張子なし)"で指定する。 GameRegistry modが追加したアイテム・ブロック・レシピなどを登録するためのクラス。 Item registerItem(Item item, String name) GameRegistryに追加アイテムを登録するメソッド。 引数は追加アイテムと登録名。 使用例 オファレンレーザーマガジン [白]を追加する部分。 メタデータなどを使っている箇所は省略した。 +オファレンMOD OfalenModCore.java package nahama.ofalenmod; /*略*/ /**@author Akasata Nahama*/ @Mod(modid = OfalenModCore.MODID, name = OfalenModCore.MODNAME, version = OfalenModCore.VERSION) public class OfalenModCore { public static final String MODID = "OfalenMod"; public static final String MODNAME = "Ofalen Mod"; public static final String VERSION = "[1.7.10]1.0.0"; /*略*/ /**最初に行われる処理。アイテム・ブロックの追加などを行う*/ @EventHandler public void preInit(FMLPreInitializationEvent event) { /*略*/ //アイテムを設定するメソッドを実行 OfalenModItemCore.registerItem(); /*略*/ } /*略*/ } OfalenModItemCore.java package nahama.ofalenmod.core; /*略*/ public class OfalenModItemCore { /*略*/ public static Item magazineLaserWhite; /**アイテムを設定する*/ public static void registerItem () { /*略*/ magazineLaserWhite = new LaserMagazine() .setUnlocalizedName("magazineLaserWhite") .setTextureName("ofalenmod laser_magazine_white"); GameRegistry.registerItem(magazineLaserWhite, "magazineLaserWhite"); } } LaserMagazine.java package nahama.ofalenmod.item; /*略*/ public class LaserMagazine extends Item { public LaserMagazine() { super(); this.setCreativeTab(OfalenModCore.tabOfalen); /*略*/ } /*略*/ } このままテストプレイをしてみると、テクスチャがない状態ではピンクと黒のデフォルトテクスチャになってしまう。 また、名前がitem.aluminium.nameとなる。 これらの解決方法は、次の次、リソースの作成で。 コメント この項目に関する質問などをどうぞ。 アイテムもブロックもそうですが、ItemIDを設定するコードを教えてほしいです! - 88taishi88 2015-10-11 19 24 58 1.7.10では、mod側からアイテムID・ブロックIDを指定することはできません。 - 赤砂蛇凪浜 2015-10-11 19 52 11 そうですか・・・ ありがとうございます! - 88taishi88 2015-10-12 09 26 53 アイテムをいっぱい追加するとエラーがでるのでいっぱい追加するコードを教えてほしいです - yuma 2015-12-19 13 18 31 「いっぱい」とありますが、具体的に何個ほど追加するとエラーが出るのでしょうか。また、エラーとはどのようなものでしょうか。 - 赤砂蛇凪浜 2015-12-19 19 45 29 メソッド名がperInitとなっておりますが、preInitと名付けたかったのかもしれません。 - 参考になります 2016-02-05 15 33 37 ご指摘ありがとうございます。修正しました。 - 赤砂蛇凪浜 2016-02-05 18 15 36 必ずtabMaterialsのところでエラーを吐いてしまいます... - togtog 2017-03-26 14 19 04 自己解決しました、MATERIALSにすることでエラーが出なくなりました。失礼しました。 - togtog 2017-03-26 14 20 51 名前
https://w.atwiki.jp/sampleisbest/pages/279.html
開発環境 Microsoft Visual C++ 2010 Express (SP1) 実行環境 Microsoft Windows XP Home Edition (SP3) プロジェクトの種類 Win32 プロジェクト プロジェクト名 FreqMod アプリケーションの種類 Windows アプリケーション 追加のオプション 空のプロジェクト 文字セット Unicode FreqMod.cpp // FreqMod2 FM音源での音の作り方 #pragma comment(lib, "winmm") #define _USE_MATH_DEFINES #include Windows.h #include tchar.h #include math.h #define SAFE_FREE(p)if (p) { free(p); p = NULL; } #define APP_NAMETEXT("FreqMod") #define SAMPLING_RATE44100 // LFO(Low Frequency Oscillator) 低周波発信器 // EG(Envelop Generator) struct VoiceParam { char Feedback_Algorithm;// 未使用 char OperatorMask;// 未使用 char WaveForm;// 未使用 0 ノコギリ波 char Sync;// 未使用 0 Key-onと無関係にLFOが動作 short Speed;// 未使用 LFOの速度(0 - 16383) char PitchModulationDepth;// 未使用 音程に対してLFOをかける深さ(-127 - 127) char AmplitudeModulationDepth;// 未使用 音量に対してLFOをかける深さ(-127 - 127) char PitchModulationSensitivity;// 未使用 音程に対するLFOをかける度合(0 - 15) }; struct OperatorParam { char AR;// 未使用 Attack Rate(0 - 31) char DR;// 未使用 Decay Rate(0 - 31) char SR;// 未使用 Sustain Rate(0 - 31) char RR;// 未使用 Release Rate(0 - 15) char SL;// 未使用 Sustain Level(0 - 15) char OutputLevel;// 減衰量(127 - 0) 0が最大出力 char KeyboardRateScalingDepth;// 未使用 高音になるほどEGの変化速度を速くする度合(0 - 3) char Multiple;// 周波数比(0 - 15) 0=1/2 char Detune;// 未使用 音程のずれの度合(-3 - 3) char AMS;// Amplitude Modulation Sensitivity(0 - 15) }; // 関数プロトタイプ宣言 void CmdVoice0(void); void CmdVoice1(void); double Operator(const OperatorParam op, double pitch, double mod); void Trace(LPCTSTR format, ...); LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); void OnCreate(HWND hWnd); void OnSize(HWND hWnd, WPARAM wParam, LPARAM lParam); void OnHScroll(HWND hWnd, WPARAM wParam); void OnPaint(HWND hWnd); void OnChar(HWND hWnd, WPARAM wParam, LPARAM lParam); void Play(HWND hWnd); void OnWomOpen(void); void OnWomDone(HWND hWnd); // 音階 const int scale[] = {3, 5, 7, 8, 10, 12, 14, 15}; // 外部変数 SCROLLINFO siHorz; int sampleLength; PBYTE waveformData = NULL; HWAVEOUT hwo; WAVEHDR wh; HCURSOR hCursor = NULL; VoiceParam vp; OperatorParam op[4]; //============================================================================== int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, LPSTR, int nCmdShow) { CmdVoice0(); // ウィンドウクラスの登録 WNDCLASSEX wcx; ZeroMemory( wcx, sizeof wcx); wcx.cbSize= sizeof wcx; wcx.style= CS_HREDRAW | CS_VREDRAW; wcx.lpfnWndProc= WndProc; wcx.hInstance= hInstance; wcx.hCursor= LoadCursor(NULL, IDC_ARROW); wcx.hbrBackground= HBRUSH(COLOR_WINDOW + 1); wcx.lpszClassName= APP_NAME; if (RegisterClassEx( wcx) == 0) { return 0; } // ウィンドウの作成 HWND hWnd = CreateWindow( APP_NAME, APP_NAME, WS_OVERLAPPEDWINDOW | WS_HSCROLL, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL); if (hWnd == NULL) { return 0; } ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); // メッセージループ MSG msg; while (GetMessage( msg, NULL, 0, 0)) { TranslateMessage( msg); DispatchMessage( msg); } SAFE_FREE(waveformData); return msg.wParam; } void CmdVoice0(void) { op[0].OutputLevel = 32; op[0].Multiple = 12; op[1].OutputLevel = 57; op[1].Multiple = 15; op[2].OutputLevel = 30; op[2].Multiple = 1; op[3].OutputLevel = 0; op[3].Multiple = 3; sampleLength = SAMPLING_RATE * 4; waveformData = (PBYTE)malloc(sampleLength); int i = 0; for (int n = 0; n 8; n++) { for (int t = 0; t SAMPLING_RATE / 2; t++) { double freq = 440.0 * pow(pow(2.0, scale[n]), 1.0/12); double pitch = fmod(freq * t / SAMPLING_RATE, 1); // Algorithm=2 double output0 = Operator(op[0], pitch, 0); double output1 = Operator(op[1], pitch, 0); double output2 = Operator(op[2], pitch, output1); double output3 = Operator(op[3], pitch, (output0 + output2) / 2); //double output3 = Operator(op[2], pitch, 0); waveformData[i++] = BYTE(128 + 64 * output3); } } } void CmdVoice1(void) { op[0].OutputLevel = 112; op[0].Multiple = 1; op[1].OutputLevel = 0; op[1].Multiple = 1; sampleLength = SAMPLING_RATE; waveformData = (PBYTE)malloc(sampleLength); for (int i = 0; i sampleLength; i++) { double pitch = fmod(440.0 * i / SAMPLING_RATE, 1); // OP.1 モジュレータ double output0 = Operator(op[0], pitch, 0); // OP.2 キャリア double output1 = Operator(op[1], pitch, output0); waveformData[i] = BYTE(128 + 64 * output1); } } // 正弦波発振器 double Operator(const OperatorParam op, double pitch, double mod) { pitch = fmod(pitch * op.Multiple, 1); double add = pitch + mod; // 加算器 double output = sin(2 * M_PI * add) * (128 - op.OutputLevel) / 128; return output; } void Trace(LPCTSTR format, ...) { va_list arg_ptr; TCHAR buffer[256]; int size; va_start(arg_ptr, format); size = _vsntprintf_s(buffer, _countof(buffer), _TRUNCATE, format, arg_ptr); va_end(arg_ptr); OutputDebugString(buffer); if (size 0) { OutputDebugString(_T("...\n")); } } //------------------------------------------------------------------------------ LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case MM_WOM_OPEN OnWomOpen(); return 0; case MM_WOM_DONE OnWomDone(hWnd); return 0; case WM_PAINT OnPaint(hWnd); return 0; case WM_HSCROLL OnHScroll(hWnd, wParam); return 0; case WM_SIZE OnSize(hWnd, wParam, lParam); return 0; case WM_CHAR OnChar(hWnd, wParam, lParam); return 0; case WM_CREATE OnCreate(hWnd); return 0; case WM_DESTROY PostQuitMessage(0); return 0; } return DefWindowProc(hWnd, uMsg, wParam, lParam); } void OnCreate(HWND hWnd) { RECT rc; GetClientRect(hWnd, rc); siHorz.cbSize= sizeof siHorz; siHorz.fMask= SIF_RANGE | SIF_PAGE | SIF_POS | SIF_DISABLENOSCROLL; siHorz.nMin= 0; siHorz.nMax= SAMPLING_RATE - 1; siHorz.nPage= rc.right; siHorz.nPos= 0; SetScrollInfo(hWnd, SB_HORZ, siHorz, FALSE); } void OnSize(HWND hWnd, WPARAM wParam, LPARAM lParam) { if (wParam == SIZE_MINIMIZED) return; siHorz.nPage= LOWORD(lParam); int nPosMax= max(siHorz.nMax - (int)siHorz.nPage + 1, 0); siHorz.nPos= min(siHorz.nPos, nPosMax); SetScrollInfo(hWnd, SB_HORZ, siHorz, TRUE); } void OnHScroll(HWND hWnd, WPARAM wParam) { int nPos = siHorz.nPos; switch (LOWORD(wParam)) { case SB_LINEUP nPos -= 10; break; case SB_LINEDOWN nPos += 10; break; case SB_PAGEUP nPos -= siHorz.nPage; break; case SB_PAGEDOWN nPos += siHorz.nPage; break; case SB_THUMBTRACK SCROLLINFO si; si.cbSize= sizeof si; si.fMask= SIF_TRACKPOS; if (GetScrollInfo(hWnd, SB_HORZ, si) != 0) { nPos = si.nTrackPos; } break; } int nPosMax = max(siHorz.nMax - (int)siHorz.nPage + 1, 0); nPos = min(nPos, nPosMax); nPos = max(nPos, 0); if (nPos == siHorz.nPos) return; ScrollWindowEx(hWnd, siHorz.nPos - nPos, 0, NULL, NULL, NULL, NULL, SW_INVALIDATE | SW_ERASE); siHorz.nPos = nPos; SetScrollInfo(hWnd, SB_HORZ, siHorz, TRUE); UpdateWindow(hWnd); } void OnPaint(HWND hWnd) { PAINTSTRUCT ps; HDC hdc = BeginPaint(hWnd, ps); RECT rc; GetClientRect(hWnd, rc); //Trace(_T("OnPaint %d %d\n"), ps.rcPaint.left, ps.rcPaint.right); // waveform HPEN pen = CreatePen(PS_SOLID, 0, RGB(0,0,255)); HGDIOBJ penOld = SelectObject(hdc, pen); for (int x = ps.rcPaint.left; x ps.rcPaint.right; x++) { size_t i = siHorz.nPos + x; if (SAMPLING_RATE = i) break; MoveToEx(hdc, x, rc.bottom / 2, NULL); LineTo(hdc, x, rc.bottom * (255 - waveformData[i]) / 256); } SelectObject(hdc, penOld); DeleteObject(pen); EndPaint(hWnd, ps); } void OnChar(HWND hWnd, WPARAM wParam, LPARAM lParam) { Trace(_T("OnChar %x %x\n"), wParam, lParam); switch (wParam) { case VK_ESCAPE DestroyWindow(hWnd); break; case p Play(hWnd); break; } } void Play(HWND hWnd) { if (hCursor) return; WAVEFORMATEX wf; wf.wFormatTag= WAVE_FORMAT_PCM; wf.wBitsPerSample= 8; wf.nChannels= 1; wf.nSamplesPerSec= SAMPLING_RATE; wf.nBlockAlign= (wf.wBitsPerSample / 8) * wf.nChannels; wf.nAvgBytesPerSec= wf.nSamplesPerSec * wf.nBlockAlign; wf.cbSize= 0; MMRESULT mmr = waveOutOpen( hwo, WAVE_MAPPER, wf, (DWORD_PTR)hWnd, 0, CALLBACK_WINDOW); if (mmr != MMSYSERR_NOERROR) { Trace(_T("waveOutOpen\n")); return; } HCURSOR hWait = LoadCursor(NULL, IDC_WAIT); hCursor = SetCursor(hWait); SetClassLong(hWnd, GCL_HCURSOR, (LONG)hWait); } void OnWomOpen(void) { wh.lpData= (LPSTR)waveformData; wh.dwBufferLength= sampleLength; wh.dwBytesRecorded= 0; wh.dwUser= 0; wh.dwFlags= 0; wh.dwLoops= 0; wh.lpNext= NULL; wh.reserved= 0; MMRESULT mmr = waveOutPrepareHeader(hwo, wh, sizeof wh); if (mmr != MMSYSERR_NOERROR) { Trace(_T("waveOutPrepareHeader\n")); return; } wh.dwFlags|= WHDR_BEGINLOOP | WHDR_ENDLOOP; wh.dwLoops= 1; mmr = waveOutWrite(hwo, wh, sizeof wh); if (mmr != MMSYSERR_NOERROR) { Trace(_T("waveOutWrite\n")); } } void OnWomDone(HWND hWnd) { Trace(_T("OnWomDone\n")); waveOutReset(hwo); waveOutUnprepareHeader(hwo, wh, sizeof wh); waveOutClose(hwo); SetCursor(hCursor); SetClassLong(hWnd, GCL_HCURSOR, (LONG)hCursor); hCursor = NULL; }