少しずつゲームを作るスレ (960レス)
少しずつゲームを作るスレ http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
1: 1 ◆sszKYtA5zs [] 2013/04/24(水) 09:20:46.04 ID:ZfuwJ3du 今は何も出来なくても、少しずつ頑張ればいつか凄いゲームが出来るはず。 というわけで、少しずつゲームを作っていくスレッドです。 少しずつゲームを作るスレまとめwiki http://www54.atwiki.jp/2chgame/ http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/1
941: ルナドンぽいの [sage] 2025/05/27(火) 21:39:51.02 ID:LiYeZ7IQ >>940 元気ですかー!!(故人) そういえばわしは青森にあるA猪木の墓を訪れたことがあります 意外とこぢんまりとした墓でしたが綺麗にされていて真新しい花や酒などが多く供えられていたのが印象的でした ってそんなことは置いといて、後押しありがとうございます そうっすね、やらないことには始まりませんよね まあ本当にSteamで販売するかは保留にして(大事な決断はなるべく後回しにする製作者の屑)、 英語版はいずれ作りたいと思っていたのでまずはそれに取りかかろうかと思います http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/941
942: ルナドンぽいの [sage] 2025/06/05(木) 22:13:19.20 ID:6mDB2sDM Text Dougeonを.NET FrameWorkから.NETに移行するのに手間取ったりしつつ、ようやく英語版の作成に取りかかる 色々考えたが、ゲーム内のテキストデータをTextDataクラスとしてまとめてJSONファイル化するのが翻訳に便利な気がする まず手始めにキャラ作成時の「通称」と「名前」のリストをTextDataとしてシリアライズ(JSON化) 出来たJSONファイル(見やすさのためデータ量は適宜減らしている) https://imgur.com/3c4OJ4k.png これをAI神に「このJSONファイルのValue部分を英訳して下さいオナシャス!」と奉納する そして下賜されたJSONファイル https://imgur.com/RjrnZ5b.png ゲーム開始時にこの英訳されたJSONファイルをデシリアライズしてゲーム内のテキストデータに展開するようにして、 ゲームを開始すると……「通称」と「名前」が英語化している!(当然) https://imgur.com/EyF6yA9.png だが、英訳が長すぎたりすると変なことになったりもする。こういうのは個別に調整するしかないかも https://imgur.com/qDMTwX8.png あとは粛々と残りのテキストデータもTextDataクラスにまとめて、ゲーム内データに展開する処理を追加すれ一気に英語化できる、はず このやり方なら英語だけじゃなく中国語とかロシア語とか他の言語もいけますね、これは最初から20か国対応いけるな!(AI神頼み) ただ、JSONのままだとユーザーに中身が丸見えになってしまう 通称や名前のリストが見えても大した問題ではないが、イベントなどのテキストまで読めてしまうと興醒めというかゲームとしてどうかと思うので 暗号化とまでは行かなくてもバイナリ化するなどして一般ユーザーには基本見えなくなるような処理を加えたい 具体的には……勿論これから考えますよ!(いつもの) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/942
943: Text Dungeon(英語化) [sage] 2025/06/10(火) 21:55:23.09 ID:+DfLqwUX バイナリ化はとりあえず後回しにして(いつものパ)、言語の選択を実装した ↓のように"Language"フォルダに各言語のJSONファイル(ファイル名=言語名とする)を入れると https://imgur.com/QselGQL.png タイトル画面でドロップダウンリストから言語を選べるようになる 何かロシア語が妙にデカいんだけどフォントの問題かしら? https://imgur.com/GNeuwhV.png 一応タイトル画面だけ中国語対応してみたw(Steamの4人に1人が中国語ユーザーだとか) https://imgur.com/j1GGsLc.png あとはひたすらテキストデータをTextDataクラスにまとめる作業を進め……ているんだけど これがかなりのボリュームであとどれくらい時間がかかるか見当もつかない ほぼテキストで出来ているゲームなので当然と言えば当然なんだが まあ迅速に少しずつ進めていきますよっと(3か月コース) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/943
944: Text Dungeon(英語化) [sage] 2025/06/12(木) 00:32:38.42 ID:yZyhP/xw ↑でコンボボックス(ドロップダウンリスト)を配置したら、何故か 「常にコンボボックスがフォーカスされ、背景(ユーザーコントロール)にフォーカスを移せない」 (this.Focus()を何度書いても背景にフォーカスを移せない)という現象が発生し、 '1'キーを押してもゲームを開始できないし、'2'キーを押しても続きから始められなくなってしまった (ただし、クリックすればゲームを始められる) ネットを検索しても同じような現象を見つけられず、AI神に泣きつきながらあれこれ試した結果、 コンボボックスのTabStopプロパティをfalseにした上で、DropDownCloseイベント発生時に this.ActiveControl = nullを入れて無理やり非アクティブにしてやると、 コンボボックスの操作後に背景にフォーカスが移ってキー入力が効くようになった 同じような現象が起きて困っている人のために一応ここに記す (こんなところに書いても誰も見つけられない定期) っていうか検索して出てこないのだからおま環なんだろうか、わけがわからないよ http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/944
945: 456 [sage] 2025/06/12(木) 09:33:06.26 ID:1UEcXoJI FormのプロパティKeyPreviewをTrueにすれば良いような気がするが背景(ユーザーコントロール)が謎すぎて何とも http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/945
946: Text Dungeon(英語化) [sage] 2025/06/12(木) 22:10:43.46 ID:yZyhP/xw >>945 レスありがとうございます。 Text Dungeonはフォームは1つ(Form1)で、From1上に各画面ごとのユーザーコントロール (例えばタイトル画面だったらUserControl_Title、メイン画面だったらUserControl_Mainなど)があって、 ユーザーコントロールを切り替える(.Visible=true/falseする)ことで画面を切り替える仕様になっています また、KeyPressイベントは各ユーザーコントロールのイベントハンドラ(タイトル画面ならUserControl_Title_KeyPress)で処理しています で、ユーザーコントロールにはKeyPreviewプロパティがないので、Form1のKeyPreviewをtrueにして Form1のkeyPressイベントをUserControl_Title_KeyPressに転送してみたところ、>>944の現象を回避することができました こっちの方がActiveControl = nullなんてことをするより筋のいいやり方かもしれません ただ、この手法だとフォーカスは相変わらずコンボボックスに残るため コンボボックスの操作終了後も四角い点線枠が表示され続ける(↓) https://imgur.com/7TSHahn.png のが妙に気になるので、一旦は>>944の処理で対応したいと思います。 ちなみに本現象はコンボボックスに限らずキー入力があるコントロールをユーザーコントロール上に置くと発生するようで どうもユーザーコントロールはKeyPressイベントはあるのにTabStopプロパティはない、 子コントロールを置けるのにKeyPreviewプロパティはないなど、フォーカス周りの設計思想があいまいというか、 システム側にぶん投げてるような感じで、プログラマー側ではフォーカスを制御できないような気がします (調べたわけではないので個人の感想です) つまり、わしが悪いんやない、Microsoftがいい加減なのが悪かったんや……! (と、いい加減プログラマーが申しております) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/946
947: Text Dungeon(英語化) [sage] 2025/06/15(日) 23:33:18.07 ID:5+yigztT 相変わらず遅々として進まない、父の日だけにね(ニゴッ まさかこのスレでこのネタを4回もやるとは思わなかったよ…… 英語翻訳は上記のようにAI君にやってもらっているのだが、 単なる作業と思いきや会話していると色々英語の勉強になって意外と楽しい。例えば 中央都市:国の首都であり、高い教育水準を誇っています。 この都市の出身者は技量値が高くなる傾向があります。 の「中央都市」の英訳を幾つかオナシャス!と頼むと この都市の特徴を考慮すると、以下のような英訳が適しています: - Capital City(シンプルに「首都」を表す一般的な訳) - Metropolitan Capital(教育水準が高い都会的な首都を強調) - Academic Capital(学問や教育の中心であることを強調) - Scholar’s Haven(学者が集まる知識の中心地というニュアンス) - High Education Capital(高い教育水準を持つ都市であることを強調) 「技量値が高くなる傾向がある」という点を考慮すると、「Refined Capital City」 や 「Skillful Metropolitan」 という表現も適しているかもしれません。 イメージに合うものはありますか? と返してくる だが、地理的に「中央」であることを強調したいので「Central Capital City」はどないや?と聞くと、 "Central Capital City" は、都市の特徴を明確に伝えつつ、首都であることを強調できる良い選択肢です! ただ、英語では通常「Capital City」で首都の意味が十分伝わるため、「Central Capital City」は強調しすぎて少しくどい印象かもしれません! と持ち上げつつやんわりとダメ出しされ、ぐぬぬ……となったりして割と楽しい(結局シンプルに「Central City」にした) まあAI君、たまに堂々と間違ったことを言うので裏取りは必要になるんだけどね でもこのペースだとマジで3か月コースになりそう、まあ父の日だからね、しょうがないね(意味不明) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/947
948: Text Dungeon(英語化) [sage] 2025/06/19(木) 23:51:01.13 ID:rg8+gcaO ↑で「20か国語対応いける!」などとはしゃいでいたが、翻訳作業を進めるにつれ、 んなわきゃないことがようやく分かってきた(知力3) 固定の文章だったらその対訳をデーターベース(JSONファイル)に登録するだけでいいが、 ゲームなので当然ながら文章は常に固定ではなく一部が動的に変わるケースがある 例えば「輝くロングソードを拾った」という文章だったら「ロングソード」が「バックラー」になったり、 また、「輝く」が「光る」や「古ぼけた」になったり、ゲーム中の状況に応じて単語が動的に変わるわけだが、 言語によっては冠詞や形容詞が名詞の性(男性名詞か女性名詞か中性名詞か)、数(単数か複数か、言語によっては双数という区分もある)、 格(名詞の文章上の役割、主格、所有格、目的格など)によって変化することがある 例えばドイツ語の場合、「輝くロングソードを拾った」はロングソードが男性名詞で、単数で、直接目的格なので 冠詞はein、形容詞(輝く)はglanzendes になるが、これがバックラーだと女性名詞なので冠詞がeinen、形容詞はglanzendenになる また、「輝くロングソードは炎に包まれた」のようにロングソードが主格になった場合も冠詞、形容詞が変化するし、 さらにロングソードが単数か複数かによっても変化する おまけに変化の仕方も必ずしも一定の規則に従うとは限らず、不規則変化する単語もある (ドイツ語はほぼ規則的に変化するが、フランス語やロシア語などは不規則変化する単語が多い) よって、単に「ロングソード」や「輝く」の対訳を一つ登録するだけでなく、 名詞ならそれが男性名詞か女性名詞か中性名詞かを登録する必要があるし、 不規則変化する形容詞だったらその変化形をデータとして登録する必要がある さらに冠詞や形容詞を動的に変化させるための処理をプログラム側で実装する必要もある 無論、変化の仕方(どういう場合にどう変化するか)は言語によって異なるので、 言語ごとにその処理を実装しなければならない 要するに言語ごとのJSONファイルを用意さえすれば多言語対応できる、 などという甘い夢はひとひらの幻となり、時の淵へと沈んでいったのである(唐突な文学的表現@AI) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/948
949: Text Dungeon(英語化) [sage] 2025/06/20(金) 00:14:53.92 ID:4tDnrhMf で、結局どうするかだけど「英語だけ対応してあとは諦める」方向にしようかと(人生諦めが肝心) もしかしたら中国語(簡体字)にも対応するかもしれない (中国語には冠詞も形容詞の変化もないようなので比較的楽そうな気がする、気がするだけかもしれないが) そもそもText Dungeonをローカライズしたいという有志が現れる可能性は0.01ppmくらい(適当)だし、 億が一そんな人が現れたら、その時はその時で対応すればいいと思うのである 一応、固定文でない言葉はクラス化して属性なり変化形なりのプロパティを後からつけ足せるようにしておけば 億が一の事態が発生した場合も柔軟に対応しやくなる、はず 例えばクリーチャーの名前だったら public class CreatureName { public string Name { get; set; } public string Plural { get; set; } //複数形 public string Quantifier { get; set; } //量数詞 //public int Gender { get; set; } //性(後で追加する……かも) public CreatureName() //コンストラクタは日本語とする { Name = "名無し"; Plural = string.Empty; // Quantifier = "体の"; //Gender = 0; } } みたいにしておいて、後から男性名詞やらなんやらに対応するときはGenderプロパティを追加する形にしようと思う 他にも「こうしといた方がいいよ」とか「こういう場合はどうするんだ」など意見や疑問があったら書いて貰えるとありがたい なんて言ってもレスは無いことは分かっている。いいんだ、AIと勇気と456氏だけがともだちさ(一方的な友達認定) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/949
950: 456 [sage] 2025/06/20(金) 00:45:15.12 ID:CAVCWRzU こまけえことは気にすんな 誤訳も個性って事にしとけばええんよ(思考停止) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/950
951: Text Dungeon(英語化) [sage] 2025/06/20(金) 21:22:53.20 ID:4tDnrhMf すみません、バックラーは男性名詞でした なんてこった、これがゲルマン魂ってやつか(意味不明) >>948の「バックラー」は「プレートメイル」に置き換えてお読みください >>950 そうですね、某ファイナルソードも翻訳がアレで却ってウケた感がありますし(尚、日本でしかウケなかった模様) JSONファイルでの単語置き換えは簡易翻訳ということで、良かったら使ってください(自己責任で!)という感じにしようかと http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/951
952: Text Dungeon(英語化) [sage] 2025/06/24(火) 22:01:27.89 ID:P292I//X キャラメイク画面の英語化がようやく一通り完了 https://imgur.com/OjjPu2i.png だが、また細かいところで気になっていて、「通称」「名前」が今はこの順で並んでいるのだが、 英語だと異名や二つ名などは名前の後に来ることが多い 例えば「ドラゴン殺しのローレ」なら「Lore the Dragonslayer」になるので、 英語版では「名前」「通称」の順に変えるか、また、多言語対応するならJSONファイルで順序を設定出来るようにすべきかもしれない この行き当たりばったりで作るわりに細けえところで妙に悩む癖、どうにかなりませんかね(他人事) まあ悩んだ挙句、とりあえず保留にするのがいつものパティンなんですけどね さらに「体力」「技量」「運勢」の3つの能力値は某ゲームブックをパ、参考にしているのだが、 元は英語で「Stamina」「Skill」「Luck」で、「Stamina」は何となくしっくりこないのでVitarityに変えるとして、 「Skill」をそのまま採用すると剣術、呪文詠唱などの「スキル」と被ってしまう 「Skill」をProficiencyとかCompetencyにするとやはりしっくりこない上に長すぎるし、 いっそPowerにするか、或いは「スキル」の方をTalentとでも訳すか、なかなか悩ましい ……とりあえず保留にしとこう(いつものパ) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/952
953: Text Dungeon(英語化) [sage] 2025/06/28(土) 00:59:31.23 ID:zzXrp4sr 名前などの個別設定画面も英語化完 https://imgur.com/G572doy.png タイプと出身地は選択すると説明が表示されて、それからEntで決定するように仕様変更 https://imgur.com/khYlwv7.png 英語 https://imgur.com/BL4n9qb.png これからようやっとゲーム本編の英語化に移るが、本編もチップツールなどを使って、 アイテムや呪文などの情報を簡単に見られるようにUIを改良したいと妄想している あと、日本語を英語化するとどうしても文字数が増えがちなので(漢字って便利)、 改行をオートで行うなどメッセージ周りの仕様を変更する必要もあるかもしれない 3か月コースと言ったが6か月コースになりそうな悪寒……でもまあ少しずつ作っていきますよ!(次スレ必須) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/953
954: Text Dungeon(英語化) [sage] 2025/07/07(月) 22:58:56.10 ID:O48nZ/qv 本編を英語化し始めてからようやく気づいたのだが(またこのパ)、 今のやり方だと「続きから」でゲームを再開したとき、一部が英語化されないことが判明した 何故かと言うと、現在の仕様ではゲーム内のアイテムやクリーチャーは ゲーム開始時に生成用テーブルに従って名前、重さ、体力などの各プロパティが割り振られる 例えば「治療の薬」や「ゴブリン」がそれぞれのテーブルからインスタンス化される しかし今のやり方では、その生成テーブル(の一部)を英語化しているだけなので、 すでに生成された後のインスタンス(=セーブデータに保存された情報)には反映されない つまり再開しても英語にならないのである それで、幾つか対応を考えてみた (1) セーブデータをロードする時、データ内の全てのインスタンスをスキャンして、 英語化すべきプロパティがあったら英語にセットし直す (2) インスタンスごとにプロパティを持たせるのではなく、 共通の値を持つプロパティは1つのデータとして共有参照し、そこを英語化する。 (例:ゴブリンの「ゴブリン」という名前は全インスタンスで共通 → 名前は共有参照データとして「Goblin」に置き換え) (3) 諦める(人生諦めが肝心) 「今日は日本語でプレイしよう」、「今日は英語の気分だな」みたいな感じで ゲーム再開のたびに言語を切り替える奴はおらんやろ…… 正直(3)で誰も困らない気はするのだが、これまで各インスタンスが全プロパティを保持していたのは はっきりいって冗長すぎた(ゲーム本体は1MB足らずなのにセーブデータは5、6MBあったのはこのせい)ので、 この機に(2)のやり方でデータ構造を見直そうと思っている 何が言いたいかというと、6か月コースが早くも9か月コースになりそうってこと(期間が3か月ずつ延びていく恐怖) こんなに苦労しているのだから、リリースされたら大ヒット間違いなしだな!(エフォート・ジャスティフィケーション) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/954
955: Text Dungeon(英語化) [sage] 2025/07/07(月) 23:11:10.12 ID:O48nZ/qv で、早速(って言うか、しばらくこれに手こずっていたのだが)ポーションのデータ構造を一部共有化してみた こんな感じで日本語版でデータをセーブして https://imgur.com/ZrucGRt.png タイトルに戻って英語版に切り替えて、ゲームを再開すると…… https://imgur.com/24ZsU6E.png ちゃんとポーションの名前が英語化されてる!(ご満悦) https://imgur.com/6LuXkoZ.png 尚、共有化すべきなのは名前だけじゃなく、複数形の名前やポーションの説明文などもある こういう「一種別について複数のプロパティをまとめて共有化/英語化」したい場合、JSONよりもCSVのほうが扱いやすいので それ用のCSVを準備することにした、こんな感じ↓ https://imgur.com/PB0TIdg.png 準備するファイルが増えていってどんどん複雑化していく悪寒…… まあ、なるようになーれ(AA略) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/955
956: Text Dungeon(英語化) [sage] 2025/07/17(木) 21:57:49.42 ID:BQA9x4Yr Potionのデータ構造を見直したついでに、MODでユーザーが新規ポーションを追加できるようにしてみた 需要があるか分からないが(無い)、以下コード込みで手順を公開 まずMod製作用に公開するAPI(DLL)を用意 https://imgur.com/GxPrNiM.png 全てinterfaceで定義して、ゲーム本体のクラスには直接アクセスしない方式にした が、全部(または一部)publicにして本体を参照するやり方が簡単でいいかもしれない……次回作はそうしようかしら(10年後) Mod(DLL)のコード https://imgur.com/My2lJWN.png 上のAPIを使って新規ポーションの実装とDLL読み込み時の初期化処理(インスタンス受け取り)を行う 今回は「エリ草ー」(Potionじゃないし)と「ヤバい薬」(飲むと死ぬ)を実装 世界観ぶち壊しだけどModならまあええやろ(自作自壊派) 本体側のMod呼び出しクラス https://imgur.com/PLD9dNe.png Modsフォルダー内の.dllを検索して、初期化(必要なインスタンスの引き渡し)とIPotionの登録を行う 現状では初期化処理を必ずMOD側で記述してもらう必要があり、この辺はまだまだ検討の余地がありそう その他、IPotionをDictionaryに登録するクラスを作ったり、IPotionをPotionに変換するラッパーを作ったり、 必要なら不確定名を割り振ったり、登録情報を元に実際にPotionをゲームに登場させるメソッドを作ったりで、 実際のところAPIやModを作るよりこれらの方が大変だったが、長くなるので割愛 興味ある人がいたら公開しますよ!(いない) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/956
957: Text Dungeon(英語化) [sage] 2025/07/17(木) 22:15:48.06 ID:BQA9x4Yr そして作成したMod(.dll)をModsフォルダに入れていざゲームを起動すると 怪しいポーションが登場 https://imgur.com/nvHvieS.png 飲むと…… https://imgur.com/WIlb7iT.png エリ草―の場合、不確定名を""(空文字)にしているので他のPotionと同様にランダムな名前が割り振られる https://imgur.com/YZXj8sT.png 飲むと鑑定されて、以後は「エリ草ー」になる https://imgur.com/JPCqx5t.png 尚、Modで作ったポーションの英語化(または日本語化)対応は……諦めようと思う(人生諦めが肝心) Mod(DLL)のstringを自動でJSONやCSVに追加する仕組みとかできなくもないかもしれないが、それはそれでファイルの管理がややこしくなるし、 他のゲームのModでも他言語への翻訳はそれぞれのMod側で対応するのが主流っぽい それに実際のところこのゲームのModを作る人は多分おらんやろうし……(そもそもプレイする人がいn) 本体の英語化はどうなったかって?じゃまた来週!(遁走) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/957
958: Text Dungeon(英語化) [sage] 2025/07/17(木) 22:23:33.51 ID:BQA9x4Yr >>456氏 以前MOD用APIについて言及されていたと思いますが、 具体的にこんなAPIがほしいとか、こういう機能を実現したいとかありますかね わしの実力的に対応できるかは置いといて、検討したいと思います そんな昔のことは忘れたならば無理に思い出すことはないですが http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/958
959: 456 [sage] 2025/07/17(木) 23:18:06.35 ID:DOoBRGzR 848の発言の事ですかね? 多分アレは自分では無いです。 欲しいAPIがあるかと言われると...無いw と言うのも人から出されたゲームをクリアしたり出されたお題でゲーム作るのは好きなんですが人の作った物を改造するのは嫌いなんですw 〇〇だったら良いのにと思ったり言ったりはするんですが自分で触ると急に冷めてしまって...嵌ったゲームは逆に縛りプレイを始めてしまうような奴でして... 物語に入り込んでる所メタ発言で急に現実に戻されるのが嫌みたいな?何かめんどくさい奴ですねw あったら良い機能としてはスイッチかXBoxコントローラーで全部操作可能とか 寝っ転がってやるときはこれが楽でいいんですよね(典型的ダメ人間) http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/959
960: Text Dungeon(英語化) [sage] 2025/07/17(木) 23:39:56.93 ID:BQA9x4Yr >>959 あれ、そうだったんですか すみません、てっきり456氏の発言かと思い込んでいました 確かにModはメタ的というか、特にDLLだとプログラミングなので現実世界に引き戻される感がありますね コントローラー対応は確かにあった方がいいですね(販売する気なら尚更) ぼちぼち検討してみたいと思います >>848氏 失礼しました 改めて何かご意見や希望等ありましたらお願いします そんな昔のことは忘れたならば無理にry http://mevius.5ch.net/test/read.cgi/gamedev/1366762846/960
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.028s