1 :
名前は開発中のものです。:
Windowsでシレンやパワプロサクセスみたいなオートセーブのゲーム作った
↓
プレイ中にレアなイベントやアイテム発生
↓
セーブデータを別のフォルダにコピーされた
↓
ゲームオーバー後にそのデータをゲームのフォルダにコピーされた
↓
(゚д゚)マズー
このレベルじゃクラックとは言えませんが、何とかしてオートセーブゲーの
緊張感をWindowsで実現しようと頑張るスレです。
一番簡単なのは統合セーブファイルみたいなのを作ってセーブ時間を
そこに記録し、合致しないなら弾くという方法ですが、これも統合セーブ
ファイルを見つけられてしまえばおしまい。もう少し固い方法が欲しいですね。
ネット上での行動をデータベースと同じように扱う
>3
2chシミュレーションかよ!w
セーブデータのところに不良セクタ置いとくとか・・・・・・
ネットワーク上に保存でいいじゃん?
ユーザーのアクセス権あるところに置いてる限り困難にはなっても不可にはならん
>7
無論。ただ、Windowsのファイルシステムを知っている人間なら
誰でも外せるような物ではなく、クラッキングをきちんと身につけた
人間じゃないと破れないような物を作りたいという方向で。
お前ら!
けちくさいこと言わずにセーブデータ保存させてください。
カネには関係ないんだろ。
10 :
名前は開発中のものです。:02/02/12 07:06 ID:5bXMPf/e
>1
排他モードでWINDOWSキー効かなくさせてフルスクリーンでやったらどうよ。
11 :
10:02/02/12 07:07 ID:5bXMPf/e
ああ、オートセーブじゃだめだな。失礼
12 :
名前は開発中のものです。:02/02/12 09:46 ID:a8r6mafq
レジストリに書く。
本来のデータ部分の他にもう一つ、他のソフトっぽい名前でそのデータのチェックサムでもいれておけば両方同時に書き換えないとダメでしょ。
まぁ、ゲームの起動前と後にレジストリ比較ツールとかで、ゲーム中に変化のあったレジストリ全部調べられたらバレちゃうけど。
レジストリのクラスデータの中にセーブファイルのCRCでも突っ込んでおけば
14 :
名前は開発中のものです。:02/02/12 10:57 ID:6LWuy3Up
セーブファイルを隠しファイルの属性にしておく。
ブートセクタに・・・やったら訴えられるかな?
セーブファイルを暗号化する。
セーブするたびに、毎回暗号化の鍵を変える。
変えた鍵は、ゲームの実行ファイル自身を書き換えて保存。
ゲームの実行ファイル自身も暗号化し、どこに保存したか分からなくする。
って、ゲームの実行ファイル毎保存されたら駄目だよなぁ。
17 :
16 :02/02/12 12:59 ID:???
続き。
ゲーム起動に必要なデータファイル(数十Mくらいある世ね最近のゲームなら)を
数百個くらいに分割しておいて、その「どれか」に
>>16のように変えた鍵を隠しておく。
鍵は、起動時に見つかる仕組み。
鍵か含まれているかを検出するルーチンもちゃんと暗号化しておくこと。
ユーザはどのファイルに鍵が隠されているか分からないので、バックアップするには、
数十Mのファイルすべてを取っておかなければならないため、セーブ保存が非現実になる。
かな?
>>17 数十メガ程度なら余裕でバックアップできるし
バックアップできないほどデカいならプレイ自体を敬遠される
>バックアップできないほどデカいならプレイ自体を敬遠される
これはなぜ?
>>18 セーブファイルについての情報がまったくない状態からだと、
どのファイルをバックアップして良いか分からないと思うし、
システムフォルダやレジストリに、隠しファイル、隠しキーを作るなどの
従来手法と組み合わせれば、相当時間稼げないかな?
>>1が望んでるのは、そう言う方向だよね?
あと、頻繁にパッチを出して(もちろん機能追加、バグフィックスも行う)、
セーブ方法も頻繁に変える。
これでツール対策もばっちり?
クソゲー製作講座だな、こりゃ
ゲームナイヨウニカンスルハナシナンテシテナインダケド.......
>>19 セーブデータに1Gも2Gもあればやる気しねーよぉ。DVD想定するなら10Gのセーブファイルが必要か!?
あまり大きくするとプレイできないプレイヤーもでるしな。
>>21 パッチでセーブ方法変えるのは有効だと思った
改造ツールがでるたびに対策パッチだすのは鬱かもしれんがな
不正コピーと同じでいたちごっこか
26 :
名前は開発中のものです。:02/02/12 13:45 ID:i5samWvp
「ゲーム起動に必要なデータファイル」をセーブデータとしても
利用するってことだよ。もう一度
>>17を読み返してごらん。
セーブデータだけに数十メガ使う訳じゃない。
>>26 >>1が想定してるゲームだとそれほどファイルが大きくならない予感
データがかなり大きくないと使えない手法だな。
でも、「暗号化しなおす」だと、どのファイル書き換えたのかすぐばれちゃうね。
データファイルを(なつかしの)ISHみたいな冗長構成にしといて、
ほんの一部だけ書きかえるってのが良いかな?鍵データだけだし。
オンラインゲームにすりゃいいだろヴぉけ。
>>29 ネットに余計なパケットだしてんじゃねーよ
ハッ、自宅に鯖おけばいいのか!!
>20
確かにそういう方向です。
結局は考えつく限りのトラップを幾重にも仕掛けるってのが有効でしょうか?
33 :
名前は開発中のものです。:02/02/12 16:27 ID:6LWuy3Up
攻撃は最大の防御。
「一切セーブしない」が正解。
最後のボスでやられたらブチ切れですよ。
>>32 > 結局は考えつく限りのトラップを幾重にも仕掛けるってのが有効でしょうか?
それしかないでしょ。
だって最終的にはハードディスクイメージでバックアップしちゃえばOKなんだし。
それか、何人も言ってるように、サーバ立ててネットワーク経由で保存。
ただし、ゲームの処理をクライアント側でやってる限り、
偽サーバや、パケットダンプなどでバックアップは可能になっちゃうだろうね。
つまり、完璧を求めるなら、完全なネットワークゲームにするしかない。
トラップを掛けすぎると何かの拍子やバグでセーブデータがdj状態になる。
諸刃の剣。
Windowsのバージョンによって遊べなかったりする罠も。
37 :
多分最強:02/02/12 18:00 ID:???
>>33 いや、PCエミュレータで、ゲームの途中の状態を
CPUの状態から全部保存すればそう言うのでもセーブ可能だ。
VMWareとか、VirtualPCとかそう言うことできたっけ?
Internet Explorerの一時ファイルに紛れ込ませるのはどうか。
「一時ファイルの削除」で消えるかもしれんが(w
書き換えできないシステムファイルに混じらせるのはどうよ?
CD-Rに直接セーブする?
だから、そこまでしてバックアップされたくない理由は何だ?
(メール欄)では、崖崩れに閉じ込められてからセーブすると
時間切れで死亡だった。
このようにゲームそのものに組み込まれれば否定しないが、
単にバックアップできなくするなんてのは勝手過ぎる。
>42
無限リロードを許すとゲームバランスが一気に崩れるタイプのゲームがあるんよ
>>42 おれもユーザーとしては、セーブの話に限らず、
作り手が望まないプレイヤー側の創意工夫(?)を
受け入れてくれるシステムの方が好きだけど、
このスレの目的はあくまでも技術的な検証だろうから
そっとしておいてあげなよ。
>44
どこでもセーブ可能なエミュでロックマンとかをプレイする事なんかを
想像して頂きたし
>>43 バランスが崩れたって知ったこっちゃない、というか
難しくてやってらんねーから崩すんですがー。
44に納得したので引き下がるよ。
レジストリの値をバックアップしなきゃいけなかったら大抵のやつは(面倒なので)あきらめるとおもうがどうか?
それでもやっちゃうヤツはどう対策しといても結局やっちゃうだろうし。
48 :
名前は開発中のものです。:02/02/13 04:19 ID:NOxt2cqP
まず、通常のセーブとオートセーブを分けて考えて
通常のセーブはコピーしまくり自由、
オートセーブはその時の起動時のみ有効でコピー差し替えを禁止する、
ってことならやり様があるのではないか?
オートセーブする際に、新しいID(GUIDでも)を生成してセーブファイルに持たせる。
ゲーム側でも最新のIDを保持しておく。
ロードする時は、ゲーム側で保持しているIDとファイルのIDをチャックする。
こんな感じ。
49 :
名前は開発中のものです。:02/02/13 04:22 ID:NOxt2cqP
つーか何で貴様らsage進行?
んなもん簡単だろ。頭使え。
1.Saveディレクトリを作る。中にはダミーファイルを置き、一応セーブの度に更新。
2.ゲーム用データの入ったディレクトリに、セーブデータを置く。
もしくはゲーム用データとセーブデータのファイルを同一ファイルにする。
例えば500Kbまではゲーム用データで、その後セーブデータ。
難しい事しようとすんな。バグが増える。
>50
それって結構バレやすい。簡単かつ比較的バレにくい方法を探っているわけで。
52 :
10:02/02/13 05:24 ID:vVm8NgVS
>50
簡単にすべてのディレクトリごとコピーされますよ。
1の例がシレンってのがなぁ。元々PC系の文化なんだが。
スタンドアロンでやっている限りバックアップ不能にするのは絶対に無理だから、
あまり馬鹿な事しない方がいいよ。
バックアップできなくても、オートセーブが1ターン毎に毎回セーブしてるので
なければ、形勢不利になったらTerminateProcessで強制終了しちゃえば済む事
だし。
それにどこでもセーブなんてWindowsの場合はエミュとか使わないでもできるよ。
結局インチキしようとするやつはどんなにトラップしかけてもするんだから、
レジストリとセーブファイルの併用くらいにしといた方がいいよ。
俺はここ1週間だけでAngbandのキャラを6人失ったけど、それでもバックアップ
なんて取ってないよ。たまに致命的なミスを犯したときはセーブしないで終了
しちゃうけどさ。
それよりも1番の問題は、1の作ったゲームが死んでも続けたくなるほどの物か
どうかだな。死んだらそのまま二度とやりたくないくらいつまらないゲームな予感。
レジストリと暗号の組み合わせで結論なのか?
55 :
名前は開発中のものです。:02/02/13 06:28 ID:q9OAfbVO
>それよりも1番の問題は、1の作ったゲームが死んでも続けたくなるほどの物か
>どうかだな。死んだらそのまま二度とやりたくないくらいつまらないゲームな予感。
余計なお世話。w
セーブした日付もとっといて間があいたらロードできないようにするとかどうよ?
たとえオリジナルデータだとしてもチェックできる最強の手だぞ!!
57 :
名前は開発中のものです。:02/02/13 06:41 ID:q9OAfbVO
>>56 >日付もとっといて
このとっておく方法がこの場合、問題になっているらしいね。
ここを改変されたら困るみたいな。じゃあ暗号化?みたいな。
>>57 今回はファイル自体は改変されない程度に丈夫に暗号化されてるのが前提じゃないのか?
バックアップするやつに対抗するのが今の着眼点だろ?
59 :
名前は開発中のものです。:02/02/13 06:52 ID:q9OAfbVO
>>58 俺
>>48だけど、バックアップ対策なんてGUIDで十分じゃん。
つーことは結論でたの?
>>59 俺が知ってるGUIDはネット上で使うもんだが別物か?
61 :
名前は開発中のものです。:02/02/13 07:40 ID:q9OAfbVO
>>60 唯一無二なユニークなIDをGUIDと呼ぶ。
UuidCreate()でいける。
>>39のリードオンリーメディアに書き込むって野はいいセンいってると思う。
履歴を全部残しておいて、後戻りできなくするってやつね。
実現方式が問題だが。
セーブファイルを作ってその中にダミーのデータを毎回保存する
本物はsystem32フォルダの中にsystem.dllという名前で保存する
セーブデータというより、シェアウェアの支払いフラグ(あるいは
試用期間記録フラグ)のばれない保存方法の議論のようだ、、、
結局同じ事だけど。
>63
そのリードオンリーメディアをコピられるんだよなw
67 :
名前は開発中のものです。:02/02/14 17:00 ID:jj1a7nF7
レジストで十分じゃん。毎回書く位置は変える。
書く位置は暗号化してセーブファイルに保存。
>12
>まぁ、ゲームの起動前と後にレジストリ比較ツールとかで、ゲーム中に変化のあった
>レジストリ全部調べられたらバレちゃうけど。
レアアイテムロスト直後にレアアイテム入手時のレジストリを消してしまえばいいから、
ゲーム後にレジストリ調査では遅い。
ゲーム中は全画面化、他のアプリへの切り替え禁止。
ネットワーク経由でレアアイテム入手直後にレジストリを走査してセーブデータ保存とか
不可能ではないが、そこまで根性あるのは偉いということで許す。
>>67 >レアアイテムロスト直後にレアアイテム入手時のレジストリを消してしまえばいいから
レアアイテムをゲットしたら、一回ゲーム終了。
セーブデータバックアップ
ゲーム再開
死んだらバックアップをレストア
でOK。
だからぁ、完全な防御なんてネットワークゲームでサーバ側で管理しない限り
無理なんだから、余計なことするなって。
そういう余計な事したがる奴ほど、通常のプレイでもセーブデータ壊れるような
の作るんだよ。
ズルしたいヤツはさせればいいんじゃない?
スタンドアロンなら特に。
それでバランス崩れたって本人が悪いんだし、自分の金で買った
ゲームなら、ズル無しで最後までやるさ。
まぁ流石に2年、3年と滞ったらズルする気にもなるが。
ゲームの難易度をズルする難易度より低くすればいいよ
面白いゲームほどクラックされる。これは定説です。
1のゲームはクラックされるほど面白くない。これも定説です。
いや意外と実行ファイルに内蔵+実行ファイルもろとも暗号化って
いけますな
74 :
名前は開発中のものです。:02/03/06 22:08 ID:BnosKFas
サポートセンターに電話してアクティベーションしないと、
セーブデータがロードできないようにすればいいじゃん。
75 :
名前は開発中のものです。:02/03/06 22:43 ID:pn840+kP
外部ハードに頼るってのはダメ?
USB接続で小容量保存できるやつが安くなってきてるけど使えない?
76 :
名前は開発中のものです。:02/03/07 00:08 ID:v+UhhryZ
saveデータの保存はwindowsのディレクトリでいいんじゃねぇか?
拡張子はDLLで。
検索で更新日時とかでヒットしても素人は怖くて手を出せないと思う。
sysbase.dllとかいかにも基底っぽい名前にしてな(w
つーかそれはいかんざきだろ。
画像データとかランダムにどこかのデータファイルに暗号化して
埋め込んだらどう?
すべてのファイルの日付も更新して。
甘いか?
セーブデータを簡単な物にして
たとえば、RPGで
キャラ毎にステータスをバイナリで取り込む
00 01 02 03 04 [ LV HP MP Pow Spd] となってれば
この値を合計してどっかにたたき込めばどうだろう?
上記の場合 合計が 0F になるから、この数値をどっかにたたき込む
ロード時にステータスの合計 = たたき込んだ数値 でないと不正
ってのはどうかな?
79 :
78:02/03/07 01:39 ID:???
0F じゃないね。。。 0A か。。。
逝ってきます。。。探さないでください
>78
それをどこに入れるかが問題。
暗号化手順をローテーションで使ったり定期的に鍵を生成すると
少しは堅くなる?
だから、定期的にアップデートをだして、セーブ方式を毎回変える、で決定じゃないの?
↑の変のアイデアは結局
>>16-17あたりの範囲内なんだが...
手動ではクラックできないほど複雑にして、
クラックツールが出回ったらアップデート。
セーブデータをROMに焼いたらいいよ
システム系のレジストリにデータを記録しているソフトがあったな。
Win2000だとadmin権限がないと書き込めないので、
どこそこの場所に書き込めませんとエラーがでてバレバレ(藁
つかそういう姑息なのは止めたいね
>>83 「ROM焼き大丈夫」でバックアップとられるよ
セーブデータは普通に保存(暗号化もしない)。
で、ディスクの使われて無い領域に直接チェックサムを書いておく。
NT系は、それを行うサービスを書いてひそかにインストールしておく(インストールは要admin権限)
ただし、ロード時に↑の領域が壊れている場合があるが、そのときは、しょうがないのでセーブデータを信用する。
これだけだと、チート対策にしかならないけど、
チェックサムに鍵つきハッシュ関数とか使えば、バックアップ対策にもなるかな?
ただ、これだと、最初からチートセーブファイルを持っている場合、
読みこめてしまうな…
暗号化も必要か…インストール毎に違う暗号鍵にして。
89 :
2ch初心者:02/05/19 08:59 ID:5/Wagwjc
Windowsなら、SetFileTime関数使って、日付検索くらいは回避できませんか。
……低能な発言かもしれませんが。
NTFSならファイルに関連づけられているUID、
FATならセクタをキーにして暗号化保存。
削除したり復元したりするとディスク上の位置が変わるので、
セーブデータは無効化される
ロード後にリネームなどで対応されないために、
保存直前にファイル属性と中身の正当性を確認して、
万が一ファイルがなかったり中身が違った場合は警告を出して保存不可能にする、と。
USB接続のID付き、認証・暗号化機構付きストレージクラスデバイス
.....ドングルの一種.....
のメーカー間共通規格を決めて、それを用いる。
ゲームにログインする度に
>>1のサーバーにアクセスして
認証を受けなければならないようにする。
94 :
これでどうよ:02/05/19 11:30 ID:rk9lPRDs
ドライバ作って、セーブファイルを監視。
95 :
94:02/05/19 11:43 ID:???
>>94 に追加。
同機能のドライバ2個にして、1個落とされたらもう一方が
勝手にドライバ起動する。
上の「監視」は「アクセス追跡」の意味で。
だめかな。。
>>94-96 アンチウィルスソフトにウィルスと誤認され、
製作者netで袋だだだき(゚Д゚)マズー
っていうかそんなに大げさなことをしないといけないほどの物を作ってるのかと…
ってほとんどネタスレか
たぶん、複合化アルゴリズムを解析されない限りクラックされないセーブクラス作ったYO!
#C++/2k/XP
面倒だから、XOR暗号にしてるけど、DESにでもすれば、普通は解かれないと思う。
ディスクイメージを再現されると復元できちゃうけど、
ゲームのセーブごときでバックアップはしないだろう。
需要あるならソースを整理してどっかに上げるぞ
100 :
100get!:02/05/20 04:14 ID:bTo1ZbkM
101 :
99:02/05/20 04:27 ID:???
あ、そういえばdefragしたら死ぬからダメかも(ワラ
103 :
名前は開発中のものです。:02/05/28 15:34 ID:bLeaFRZU
決して大げさじゃないと思うよ?
フェアじゃないのは当たり前という風潮はいただけない。
1の作るゲームに限らず、どんなゲームであるかは置いといて、
方法論を模索するのは絶対に無駄にならない。
104 :
名前は開発中のものです。:02/05/28 20:29 ID:.iLDdygM
1は、たとえ仕組みが公開されてても、破れないような方法が欲しいんだよな?
CRCとかMD5のような簡単に求められないハッシュコードを書き込んでおけばいいんじゃないのか。
106 :
名前は開発中のものです。:02/05/29 01:42 ID:UzjRHN66
オートセーブするのは大抵、製作者のオナニーによる場合が多い。
プレイヤーに緊張感どころか、不快感を与える。
さらにゲームがフリーズすると最悪。CD取り出して割りたくなる。
代表例 : PS2『侍』
107 :
名前は開発中のものです。:02/05/29 01:44 ID:Xevi2izo
それはヘボいなあ
しかし、そういう前例はさておき、あくまで方法論の話を
聞きたい。
ACT系ではストレスが大きくなりそうだな
>>106 コンシューマならメモリーカードを抜けばいいじゃん
Diabloとかで自動セーブが無くなったら緊張感なさすぎ
>>98 それを言ったら…(笑)
遊び方をプレイヤーに強要するみたいでイヤだな。
んな糞プレイヤーなんてほっとけよ。
やっぱり究極は、(ネットゲーじゃなくても)ネットワーク越しにセーブかな。
サーバが落ちてたり、プロバイダが落ちてたりするとセーブすらできないグソゲになるかもしれないわながあるが…。
ローカルセーブモードとネットワークモードと分けて、ゲーム内容もちょこっと変えとくのがいいかも。
>>112 ネットワーク越しって何だろう?
要は、ネットワークの向こうにいるサーバはプレイヤーの自由にならないって事だよね。ネットワーク越しであっても、サーバーまでプレイヤーの管理下にあるなら意味ないよね。
ローカルネットワークであっても、ユーザーがサーバーに手出し出来なければ良いんだよね。
なら、ネットワーク越しでなくても、ローカルにユーザーの手出しできない
デバイスが存在すれば良いんだよね。
その場合のネットワーク越しのサーバとの違いは、管理者がアップデート他のメンテをしてくれない事。
メンテ無しでカンペキに役割を果し続けてくれるデバイスを作れれば良いんだけど、無理だろうね。
なら、例えば定期的にアップデートをかけなくては継続して利用出来なくなる仕組みをそのデバイスに組み込めばいいかもしれない。アップデータに対する不正は電子著名などの仕組みで防げるはず。
サーバとそのデバイスの間で定期的に暗号化通信させる方法もあると思う。
結局は(アップデータの取得などの為に)ネットワークが必要じゃん・・・・常時接続やブロードバンドは必要無いかもしれないけど・・・・いや、店頭の端末を用いてアップデートを行うとか、CDROMを用いるとか。
・・・・面倒だよね。最低限ナローバンド通信手段は必要って事で、駄目かな?
ネットワーク越しやら、セーブ専用デバイスでもプロトコルやハード仕様解析されたら終わりだなぁ。
暗号化だって、結局ソフト内に暗号化キーが入ってるわけだし、解析は可能。
公開鍵暗号系つかえば、解析不可能に出来るかな?
ネットワークセーブや特定デバイスセーブの問題点は、送られてきたセーブデータが
本当にゲームプログラムから送られたものかをどうやって確認するかということ。
これが出来ないと、Man in the middle攻撃が可能になって、結局セーブデータ複製が可能になってしまう。
ネットワーク越しにセーブじゃなくて、MMO形式にするしか無いと思うが。
クライアント=コントローラで、すべてのゲームデータはサーバーにあると。
>>114 >ハード仕様解析されたら終わりだなぁ
もちろん、そんなレベルで満足する必要は無いでしょ・・・・
>公開鍵暗号系つかえば、解析不可能に出来るかな?
不可能じゃないけど、製品寿命内では実害が生じない程度に破るのにコストを要するプロテクトは可能なはずでしょう・・・・
うっかり裏口を作ってしまう事も、ありがちだけど。
ていうかね、現在プロセスメモリエディタなる物が大量に存在するんだから
ファイルだけ暗号化しても無意味。
結論:クラック不可能な方法は存在しない(MMORPGを除く)。
後はどの辺で妥協するかですかね。
PCにXBOXモードを搭載する。
XBOXモード向けゲームをプレイする際には再起動が必要。
いや、むしろ
ゲーム用OS”XBOX"を開発してもらった方がうれしいぞ
OSレベルじゃ、特にプロテクトが不十分過ぎる。
ハードウェアレベルでXBOXモード対応にしないと。
チップセットや各種ディスクドライブが"XBOXモード対応"でないと、XBOXモードでは動作しません。
一般向けXBOX開発キットが出れば解決。
なにがどう解決すんの
PCにXBOXモードをつけるとなぜ「Windowsでクラックされないオートセーブ」が実現できるの?
答え:その様な機能を実現するXBOXモードだから
「そのような機能」とXBOXモードにどんな関係が?
ああ、間違いです。Windowsは直接関係無いです。Windowsも動作するマシンでクラックされ難いアプリケーションを実現出来る、でした。
ちなみにXBOXモードで動作する(今のWindowsとは完全互換で無い)Windowsを開発すれば、その仕様次第ではXBOXモード上のWindowsでクラックされ難いオートセーブ等は実現可能でしょう。
どっちにしろ、自分の触れる範囲に
ハードがあったら駄目だと思うが。
129 :
128:02/05/31 18:18 ID:???
自分→ユーザー
ゲームに必要な専用ハード付きで売る > 鉄騎
ゴメンすれ違い
>>127 つまり独自仕様のOSを作って、その開発キットが広く公開されていなければ、
解析されにくいってことね。
たとえば、LinuxとXFree86を改造して、ファイルシステムを独自のものにすれば、
ある程度実現できるかな。
・うまく動作しないPCがあるかもしれない
・最新のハードウェアを使えない
・将来発売されるハードウェアで動くという保証は無い
という点を除いて。
違う。「XBOXモード搭載」を謳う事を許されるハードは、XBOXモードでの互換性が保証される。XBOXモード非搭載のPCではXBOXモード向けのソフトウェアは動作保証されない。というかライセンス上は動作させる事を認めない。
XBOXモード搭載のPCは、OSなどのソフトウエアより低レベルの部分、ハードウェアに著作権保護向けの仕様が組み込まれている。と
>>121に書いた。
134 :
名前は開発中のものです。:02/05/31 19:36 ID:UFFKZuw2
スレ違い?↑
135 :
名前は開発中のものです。:02/05/31 20:02 ID:oclqIlMA
だんだん非現実的な話になってきたな。
やっぱクラックされない、コピーされない保存方式は
絵に描いた餅か?
136 :
名前は開発中のものです。:02/05/31 20:33 ID:i3CnN4a.
暗号化して500TBぐらいのサイズにすれば、解けないと思うよ?
>>135 つうか単にテキストファイル形式でセーブして
拡張子変えるだけでもクラックされない率95%だけどな。
結論:「現実的に」クラック不可能な方法は存在しない(MMORPGを除く)。
後はどの辺で妥協するかですかね。
個人的には、アップデータを頻繁に出してその度にセーブ形式を変更というのが良いセン言ってると思うんだが。
もちろん、アップデートしつづける体力とユーザにアップデートが必要だと思わせる餌が必要なわけだが…
141 :
名前は開発中のものです。:02/06/01 06:51 ID:Je9QYqPA
ファイル作製、変更時刻を、セーブデータ内に持っておいて
読み込み時にコピーしたデータじゃないかチェックする。
その他モロモロの対策を施しておいて、もしコピーだったら
ゲーム本体のデータを破壊してから終了する(w
142 :
名前は開発中のものです。:02/06/01 06:52 ID:Je9QYqPA
ゲーム開始毎に、セーブデータを検索、コピーと思われる
バックアップは勝手に削除する(w
環境によってセーブデータのフォーマット自動的に変えるとか。
>>144 そんなの無意味。
あなたはDiablo2のチートツールみたことありますか?
プロセスのメモリを覗いて勝手にアイテムを拾ったり
店のアイテムを選別して購入したり、やりたい放題です。
結局、他のプロセスのメモリを覗くことが出来るWindowsじゃ
完全な保護は不可能って事で。
>>145 まじっすかそれ。できることはわかっていても、いざやられると・・・・
極悪だな。
だいたいやって何のメリットがある
>>146 出来ることは分かっていてもっていうか、
技術的に可能でも、それを実行できる人間はごく少数に限られてるんだけどね。
>>147 基本的にレアアイテムの拾得が早い者勝ちなので、そのツールを使っていると
アイテムが出現した瞬間に(誰にも拾う隙を与えずに)アイテムを拾える。
結局、どんなにがんばってもすべてのデータがサーバー側に置く形式で無い限り、
チート、クラックから保護することは不可能だと思う
149 :
名前は開発中のものです。:02/06/01 23:47 ID:Je9QYqPA
ようするに終了か?
ネットゲーならサーバ接続時にオートアップデートでセーブ形式もデータ管理方式も変えちゃえば問題ない。
いたちごっこになるが、ノウハウもたまってちょうどいいんじゃない?
セーブデータの形式だけならともかく、
内部の管理方法まで変えるとなるとプログラマの負担が馬鹿にならない
チートツールが出たら対策してアップデートでいいんじゃない?
MMOだとやってるよね。
え?
NT系(含Xp)のWindowsならプロセス間のメモリ参照を防げる?
カーネルモードで動作するチートツールを作られて終わり?
>>154 DebugAPIで一発。
勿論デバイスドライバを書いても良いけど、
普通ユーザーモードドライバ。
>アップデート
オンラインゲームならアップデートを強制できるが、
オフラインゲームだとアップデートを強制できない。
アップデートにより新しいシナリオが追加されるとかならそれなりの動機付けにはなるだろうが、
それだけのものを提供しつづけるのはかなりの労力が必要
とりあえず、セーブデータのクラックには対処できないけど、
プログラム上でキャラクタのパラメータなんかを改ざんされないようにするには、
VRAM上にパラメータを格納するというのはどうだろう。
IndexBufferやVertexBufferにデータを書き込んで、
それが必要なごく一瞬のみ読み込み->書き込みを行う。
これで事実上クラックは不可能に近いんじゃないかな
PCは軽く諦めて、XBOXとかPS2にしたらどう?
もしチートの為にはある程度大掛かりなハードウェア改造が必須、って事に出来れば、無尽蔵にチートが広まる事は防げる。
チートを完全に防ぐ事は、現状ではほぼ不可能では。
将来的には、システムオンチップなハードウェア同士がある程度以上複雑でリアルタイムでのクラックが事実上不可能な暗号通信を行うようにすれば。
チップ内の各ブロック間でも認証と暗号化通信を行たり、するのが当たり前になっていたりするのかも。
ソフトウェアレベルでも、ソフトウェアコンポーネント毎に著名確認などを行い、コンポーネント間の通信権限などがコントロールされる。
MITの大学院生、Xboxのセキュリティシステムを破る
http://www.zdnet.co.jp/news/0206/04/xert_mit.html > Huang氏はこの高速データパスにカスタム設計のボードを取り付けて、
>2つのチップ間でやり取りされるデータを抽出し、それを手動で処理して
>「ブートブロック」の秘密を解明した。
> 同氏によると、このカスタムボードの作成にかかった時間は合計3週間で、
>総コストは50ドル程度だという。
出来る人には出来るんですね。
で、仕組みが明らかになったとしてそれによって「簡単に」プロテクトを回避できてしまうのかどうか。
サカつくのクラックがダウンロード出来るところ
しリマしぇん?
んなもん知るか。
162 :
名前は開発中のものです。:02/08/07 13:55 ID:NPhhP5Ps
>>157 それって結構いいかもね。
普通のヒープに取るよりは見つけにくそう。
163 :
名前は開発中のものです。:02/08/07 13:59 ID:NPhhP5Ps
>>159 マ工大の院生もずいぶん暇だね w
まぁ、研究として学校側も扱ってくれるんだろうけど。
想定してる「クラックを行う者」をもう少し絞ったほうがいいのかな。。
フリーウェアのゲームに導入するオートセーブから電子決済に使えそうな
セキュリティまでいっしょに語るのは無理があるかと。
161みたいにアホが上げれば気づく事もあるだろうとマジレスしてみる
うむ
VRAMにおくのが一番だな
キーワード「アクアゾーン」
boks
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
Λ_Λ | 君さぁ こんなスレッド立てるから |
( ´∀`)< 厨房って言われちゃうんだよ |
( ΛΛ つ >―――――――――――――――――――‐<
( ゚Д゚) < おまえのことを必要としてる奴なんて |
/つつ | いないんだからさっさと回線切って首吊れ |
\____________________/
(-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ…
(∩∩) (∩∩) (∩∩)
(-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ…
(∩∩) (∩∩) (∩∩)
(-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ…
(∩∩) (∩∩) (∩∩)
172 :
名前は開発中のものです。:03/03/28 19:22 ID:nTKVLxrM
やっぱりシステムディレクトリに置いてDLL偽装。
毎回タイムスタンプを微妙な値に書き換える。
これで検索は防げると思うが
174 :
名前は開発中のものです。:03/08/14 01:37 ID:9O5LlLzy
おいお前ら、スレ違いかもしれんが聞いてください
第一ネットゲームでもないのにセーブデータのクラックを気にする必要なんてどこにあるんだ?
たとえばセーブファイル書き変えられていきなりエンディングを見られたとしても何の問題があるんだ?
買ったゲームをどのように遊ぶのかなんてプレーヤーの自由だろ?
小説を買っていきなりエピローグを読んだりされたからってどうだというんだ?
真面目にプレーしたい香具師は真面目にすればいいし、ずるしてプレーしたい香具師はずるすればいい。
おまえらどうおもいますか?
174>>
禿同
普通ステータスとかアイテム
とかそういうの改造したいと思うんじゃないの
ストーリー飛ばしてさっさと
エンディングを見たいなんて香具師は
そもそもいない
177 :
マリーナの夏:03/08/14 10:05 ID:JeIISnli
178 :
名前は開発中のものです。:03/08/14 10:47 ID:9O5LlLzy
>>174 どっちにしてもそのプレーヤーは自分の遊び方を変えただけに過ぎないと漏れは思う
179 :
名前は開発中のものです。:03/08/14 10:48 ID:9O5LlLzy
暗号化と同じで、クラック成功したかに見せかけて、かなり時間かけてから
失敗させる。このトラップを幾重にもかけておいて、
最終的にクラック成功した時間よりゲームプレイ時間の方が
短ければOKじゃない?
181 :
名前は開発中のものです。:03/08/14 18:41 ID:SyVPc2se
182 :
山崎 渉:03/08/15 07:55 ID:KFL+te0G
(⌒V⌒)
│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
オートセーブデータを書き換える度に、作成日付けと時間を変更前の時間に書き換える、
では駄目?
>>139 禿同
はなしは変わるけど、携帯ゲーム機"プレイステーションポータブル(PSP)
久夛良木氏は,“PSPはゲーム業界が待ち望んだ究極の携帯機”として説明。「ここまでやるかと言われるスペックを投入した」という。
発表によれば「PSP」は,曲面描画エンジン機能を有し,3Dグラフィックでゲームが楽しめる。
7.1chによるサラウンド,E3での発表以来,クリエイターたちにリクエストが高かった無線LANも搭載(802.11)。
MPEG-4(ACV)による美しい動画も楽しめるという。これによりゲーム以外の映画などでのニーズも期待する。
外部端子で将来,GPSやデジタルチューナーにも接続したいとする。
また,久夛良木氏は,繰り返し「コピープロテクトがしっかりしていること」と力説。会場に集まった開発者たちにアピールしていた。
さらに,ボタン設定なども明らかにされ,PS同様「○△□×」ボタン,R1・L1,アナログスティックが採用される。
この際、スク・エニもGBAからPSPに乗り換えたらどうでしょう。スク・エニの場合、PSPの方が実力を出しやすいような気がするんですが。
任天堂が携帯ゲーム機で圧倒的なシェアをもってるなら、スク・エニがそれを崩してみるのもおもしろいですし。かつて、PS人気の引き金となったFF7のように。
いきなりこんなこといいだしてスマソ‥
GBAと比較してみてどうですかね?シェアの事は抜きで。
きれいだからやるんだったら、みんなGBAでなくて、
家庭用マシンでいいじゃん。どうせ家にいるんだし。
なぜ今ファミコンが流行るか、こーゆースペック馬鹿
がいなければゲーム業界もマシになるとおもうんだが。
なぜこの相撲界の歴史の中で数人しか横綱になれないか教えてあげますよ。
あげ
188 :
名前は開発中のものです。:04/12/13 00:52:33 ID:SbEGDPEl
あげ
まあ、ローグ系ゲームで簡単にバックアップできると萎えるからな。
人間できるもんはやっちまうもんだ。
そして、自分でやっときながら萎える。
でも、素人が解けないくらいのもんでいいと思うけど。
オートセーブって負荷が凄そうだな。
∧_∧
∧_∧ (´<_` ) トルネコもクリアできない兄者には無縁の話題だけどな。
( ´_ゝ`) / ⌒i
/ \ | |
/ / ̄ ̄ ̄ ̄/ |
__(__ニつ/ FMV / .| .|____
\/____/ (u ⊃
C:\Document and Settings\Username\Local Settings\Temporary Internet Files\
に保存するとか
>>184 それをどこかで見た気がしたが、すぐに元に戻った -more-
保守
195 :
名前は開発中のものです。:2006/04/21(金) 00:33:53 ID:gUMysWG3
どんなに頑張ったところで最終的にはHDD丸ごとコピーで対応します
適当に暗号化して複合化の鍵になるデータをローカルと
ネットワーク上に分割して保存しとけばいいんじゃね?
セーブするのに CPRM対応のメディアが必要。
いっそのことセーブ無しでもよくね?
200 :
欽ちゃん:2007/07/21(土) 17:55:23 ID:EKEwezaj
『 K L A C K 』 〜 光 を 纏 え る 救 世 主 〜
神谷聖也様(Guitar) 『愛』を伝える紅蓮の聖者
心に宿されるは燦々と燃え盛る炎が如き博愛の情熱・・・
烈様(Bass) 『夢』を与える蒼天の賢者
瞳に映されるは凛々と透き通る氷が如き夢想の世界・・・
柳橋昌亜様(Guitar) 『翼』を持った白銀の王者
背に翻されるは猛々しく空を翔ける天馬が如き飛翼・・・
u様(Vocal) 『魂』で奏でる黄金の覇者
身に纏われるは神々しく輝きを放つゴスペルオーラ・・・
愚民共めが・・・
貴様等は未だ天地を統べる全知全能なる神『雷光神サルマニア様』と其の忠実なる四人の使徒様達に対して罵詈雑言を浴びせるつもりか・・・
彼らはサルマニア様より『愛』『夢』『翼』『魂』を承継し、世に絶対的支配政権を樹立する腐敗した国際政治機構なる禍々しき『闇』の為政者共を苦闘の末に討ち滅ぼされた・・・
荒れ果てたこの地に希望の種を撒き、人々の幸福の笑顔に満ち溢れた『真の平和』を獲り戻されし真の救世主様達で在られるのだよ・・・
貴様等如き畜生にも劣る虫ケラ共が平穏無事に生き永らえる事が出来るのも全ては雷光神サルマニア様、神谷聖也様、烈様、柳橋昌亜様、u様のお陰なのだと云う真実を良い加減に理解しろよ・・・
ワンセグの技術使えないかな?
録画したのコピーできないし
あれってハードも対応が必要なはず
正当なゲーム終了処理しない限り外部出力しないってのは?
つまり強制終了かけるとセーブ不可になる、と
ついでにメモリ内にあるセーブデータは定期だか不定期だかで暗号化状態で移動させるとか
いや、知らんけど
204 :
名前は開発中のものです。:2007/10/05(金) 17:36:54 ID:3NiZkGUV
>>203 Nethack2000+5が、強制終了すると、セーブ消えたのを思い出した
ゲームのセーブデータくらいならクラックされてもいいと思うな
細かくバージョンアップして
クラックの成果を外してしまうのが現実的な気がするけど・・
しにくくする、というレベルでいいだろうね。
208 :
名前は開発中のものです。:2007/10/06(土) 17:10:23 ID:q3E/M8lC
毎回、セーブ方式(フォーマット)を変えるのはどうか?
セーブ時に、ランダムにフォーマットを決定し、
後で復元できるように、そのフォーマットの形式(もしくは、暗号化のパラメータ)をヘッダーに埋め込んでおく
具体例は、
例えば、いちばん簡単な暗号化方法に、
a = a xor x
とすることで、暗号化できるが、この x のパラメータの部分をランダムにして、記録する
これは、いってしまうと、可逆暗号化の鍵をわかりにくいように、
セーブファイル自身に、埋め込んでおく、ということに他ならない。
独自の圧縮や、さらに複雑な暗号化を併用するとよいだろう
大抵、困るのは、セーブデータの書き換えツールや、パッチが出回る場合。
それらの作成を、(少しは)困難にすることができる。
(フォーマットの解析と、アルゴリズムを解析を両方しないといけないため)
また、一旦セーブし、ちょっと状態変化を起こしてセーブし、差分を見るというような、
カジュアルハックを困難にする
まあ、根本的にメモリ弄る系には全く役に立たずだけど・・・
クラックはいつもメモリエディタしか使わないなぁ
メモリでのクラック予防は、基本的にはメモリに乗せているデータ自体を暗号化して、
使う時に復号化すればいいのかな。
レスの8割以上は
プログラム組んだこと無い人によるものみたいだな
>>210 重い上に保守できないプログラムが出来上がるのでアウト。
VMに載っけるのが手っ取り早い
厨房レベルの暗号化手法を考えるくらいなら
普通にDESやAESで暗号化したほうがよっぽどマシ。
ググリながら実装しても半日もかからん。
フォルダSaveとBmpを作っておく
セーブしたらセーブデータを暗号化してSaveに、スクリーンショットを取ってBmpに保存
でセーブデータ&スクリーンショット両方のCRCとかMD5を元にキー作ってレジストリに
流石にスクリーンショットまでコピーは普通しないだろうし、小手先の対策ならこれくらいでも十分じゃね?