ゲームのデータファイルについて語るスレat GAMEDEV
ゲームのデータファイルについて語るスレ - 暇つぶし2ch1:名無しさん@お腹いっぱい。
01/11/18 12:27 YbPM6OMf
ゲームのデータファイルについて語るスレです

データファイルの種類(画像、BGM、効果音、音声など)は問いません
データファイルのフォーマット、圧縮、プロテクトなど語りましょう

2:2
01/11/18 12:35
[ヘッダ2byte][チェックサム2byte][データ2byte]

3:1
01/11/18 12:42
とりあえずフォーマットあたりから

ゲームを作るときには当然
データファイルのフォーマットも考えなければなりません
ちなみにいくつかのWINのゲームのデータファイルを見てみると
だいたい下記のような感じになってますね

・ヘッダー情報(識別ID、ファイル内のデータの数など)
 ファイル先頭に(必ずといっていいほど)ある
 特にはじめの4バイトが識別IDになってるものが多い(?)

・データ情報(データの識別名、位置、サイズなど)
 たいてい、ヘッダー情報の後にこれが配列される
 この数はヘッダー情報にある

・実際のデータ
 データ情報の配列の後に来る
 (ヘッダー情報のサイズ+データ情報×配列数の後)

私もゲームのデータファイルはこうしてますが、
他にもよく使われるフォーマットありますか?

4:1
01/11/18 12:46
追加
> 特にはじめの4バイトが識別IDになってるものが多い(?)
例えばYSⅡEのデータファイル(monde.ys2)は
初めの4バイトは"YS2E"が
メモオフ(***.dat)は"lnk"が識別IDとして入ってます

5:名無しさん@お腹いっぱい。
01/11/18 13:11 0XqbuScU
可変長データのストアにはどんな構造使ってる?
俺はRIFF-WAVEみたいに、
DWORD ID
DWORD size
BYTE data dup(size)
のチャンク構造でやってるけど。

6:名無しさん@お腹いっぱい。
01/11/18 13:31 +D6UHFOl
>3,4
コンパイラが(というかCPUが)32ビットごとに
アクセスしたほうがパフォーマンスがいいから
Cで書くと

struct data
{
  long sign;
  long width;
  long height;
  ...
}

という風に宣言しておくのはよくやるみたい。
CGの横幅なんか2バイトで十分そうでも4バイトとるし。

7:名無しさん@お腹いっぱい。
01/11/18 13:34 CJPmmNZI
ところで、先頭の4バイトの識別子は、
magicが一般的ですか?

8:名無しさん@お腹いっぱい。
01/11/18 15:22
 MAGファイルから直接DirectDrawのサーフェスに
読み込ませてる俺はDQNですか?

9:(●´ー`●)
01/11/18 15:51
このスレなぁ、今んとこプログラマの好みの問題にみえるべ。

10:名無しさん@お腹いっぱい。
01/11/18 17:02 I9nxB+Qv
参考資料
URLリンク(www.wotsit.org)

11:名無しさん@お腹いっぱい。
01/11/18 19:24 JxPdgokv
>10
おお、こんなところ知らなかった。便利だ、感謝。

画像ファイルとかって、皆どうやって扱ってるのかな。
俺はMAGっぽい独自フォーマットで圧縮して、何十枚かまとめて
一つのファイルにしてる。ヘッダにオフセットのサイズの情報を
書いておいて、適宜抜き出してるけど。

12:名無しさん@お腹いっぱい。
01/11/18 19:32 ZN+7V7L8
圧縮ならS3TCが扱いやすい。
固定長マンセー

13:11
01/11/18 19:50
s/オフセットのサイズ/オフセットとサイズ/

14:PSEC鍵生成パラメータ教えて
01/11/18 20:06 dvJg5esY
暗号化だが、
URLリンク(info.isl.ntt.co.jp)
のEPOC PSEC Camelliaはどうか。
特にCamellia。

15:8
01/11/18 20:26
>>11
俺はMAGそのまんまだ。拡張子もMAG(w

 昔のエロゲなんかでMAGのヘッダ潰して拡張子変えただけ
ってのもあったらしいが。

16:名無しさん@お腹いっぱい。
01/11/18 20:29
オレは画像にはPNG使ってる
データはアーカイブにして、すべてを一つにまとめてる。
データのフォーマットは
struct header {
u32l sign;
u32l size;
u32l crc32;
};
あとは簡単な暗号化を施したカタログ情報と、
その後に圧縮データが続く。

17:名無しさん@お腹いっぱい。
01/11/19 01:02 mVW1u3JE
MAGフォーマットってフリーの規格なの?
俺もほぼパクリで使ってるけど、なんかそのまま使うと怖いような。

18:名無しさん@お腹いっぱい。
01/11/19 01:14
マルチペイントのマニュアルには
同人ソフトなどでMAGフォーマットのデータを使ったりしても
いいですよ。みたいな事が書いてあった。

19:1
01/11/19 01:34
MAGフォーマットですか・・・
知りませんでした・・・

ちなみにMAGフォーマット検索してたら
こんなページ見つけました
~ 圧縮法入門 ~
URLリンク(www.ingnet.or.jp)

20:1
01/11/19 01:42
追加
URLリンク(www.gavo.t.u-tokyo.ac.jp)

21:名無しさん@お腹いっぱい。
01/11/19 02:15
鮪の前身であるMAKIフォーマットが完全なフリーをコンセプトに
開発されたものだから、当然MAGも自由に使えます。
適度な圧縮率と展開の速さ&容易さで今でも便利なMAG萌え。

22:名無しさん@お腹いっぱい。
01/11/19 02:23
ついでに、MAGの仕様は「MAGBIBLE」で検索かけると見つかると思われ。

23:名無しさん@お腹いっぱい。
01/11/19 05:16 zy4OsR/0
>>14
おお国産ですな。暗号化はAESしかしらないですなぁ
ブロック長より鍵長のほうが重要だと思うんですが AES 互換を全面に出した
ということですかな。Rijndaelより高速で256bit-keyが使えるなら使いたい。。
問題は Optimize されたレベルでより高速かということですが。。。

24:名無しさん@お腹いっぱい。
01/11/19 11:21 mVW1u3JE
メッセージデータは当然圧縮なり暗号化なりするだろうけど…1byteずらして
ごまかすってのはダメ?(w

というかゲームデータを隠すのに128bit暗号も使わないて。

25:名無しさん@お腹いっぱい。
01/11/19 11:49
>>23
そういうのってすごい気になるけど、データの鍵は
プログラムがもってるわけ?
鍵とデータを一緒に配布するって馬鹿くせえとおもったが・・・

26:名無しさん@お腹いっぱい。
01/11/19 13:13
どの部分が鍵かなんて逆アセでもしないと解らないと思うけど。

27:名無しさん@お腹いっぱい。
01/11/19 14:51
逆汗すりゃわかるんでしょ。

28:名無しさん@お腹いっぱい。
01/11/19 15:11
圧縮の方の技術だけど、
ブロックソート後のデータもほとんど暗号と変わらんよ。
ゲームに使うなら十分でしょ

29:名無しさん@お腹いっぱい。
01/11/19 15:40
URLリンク(www.interq.or.jp)
こんなのどう?

30:名無しさん@お腹いっぱい。
01/11/19 16:23
たかがゲームデータ抜きたさに逆汗するヴァカがいるか!

31:名無しさん@お腹いっぱい。
01/11/19 16:35
とりあえず貼っとくか。
URLリンク(www.jisyo.com)
MAG仕様書(原文) もちろん日本語ね。

32:名無しさん@お腹いっぱい。
01/11/19 16:56
>>30
結構いる

33:名無しさん@お腹いっぱい。
01/11/19 16:57
>>29 作者がドキュン

34:名無しさん@お腹いっぱい。
01/11/19 17:44
>>29 waveletにはちょっと興味あるけど。

35:名無しさん@お腹いっぱい。
01/11/19 18:23
解析を楽しむページ
URLリンク(ku-www.ss.titech.ac.jp)
参考までに。

36:名無しさん@お腹いっぱい。
01/11/19 20:17
基本的に、解析クン一人にでも負けたらツールばら撒かれて終わりだからなあ(藁

37:名無しさん@お腹いっぱい。
01/11/19 21:36
>>25
鍵とデータが一緒になきゃ復号できないじゃん。
勘違いしてるのかもしれないけどこれはゲームの話で、実際に暗号を
使う場面では利用者がそれぞれに鍵を持っているので一緒も糞もない。

38:名無しさん@お腹いっぱい。
01/11/20 00:12
TIM2ってどうよ?

39:名無しさん@お腹いっぱい。
01/11/20 00:35
>38 PS2の開発なんてやったことも機会もなさそうだしなぁ…
PCで使う意義もないし。

40:名無しさん@お腹いっぱい。
01/11/20 05:03 y/kAXWZY
Camelliaのコードをみましたが、8bitASIC系に特化されてて
16,32bitの最適化ソースが公開されていないようですね。
最適化ソースが無いのでRijndaelには速度で勝てないでしょう。残念ながら。
Feistel回数が比較して多いのとFeistelとSBOXの手間が他の方式と比べて
煩雑です。Feistelを何回か回すだけでも簡単な暗号系になりますから
それでもいいんですけどね。

41:名無しさん@お腹いっぱい。
01/11/20 11:19
>>37
そりゃそうだ。
しかしどんなに強力な暗号化を使っても、鍵と一緒に配布されてるんじゃなあ(藁

42:名無しさん@お腹いっぱい。
01/11/20 12:29
たかがゲーム(失礼)のデータを、そこまで暗号化しなくても
と思うのは、俺だけか?

43:名無しさん@お腹いっぱい。
01/11/20 13:30 LstOLEvl
俺もそう思う。どうせ>>35のリンク先のようなレベルのにかかったら
何やったって解析されてしまうんだから無駄無駄。
シェアウェアのクラック問題にも似てるけど。

44:名無しさん@お腹いっぱい。
01/11/20 13:42
>>42
同感。
複雑な暗号化は速度的にも不利なうえに鍵添付じゃあ、その鍵で
暗号化を解除してくださいとクラッカーに言ってるようなもの。
暗号化にかける時間があったら他のことやったほうがよい。

45:名無しさん@お腹いっぱい。
01/11/20 14:13
>>43
あのリンク先程度じゃ、変形算術圧縮とか、TripleDES掛けただけでも解析できなくなるだろ

46:名無しさん@お腹いっぱい。
01/11/20 14:17
まぁしばしばルーチンの解析なんかしないで、ルーチンごと
ブッこぬいて使ったりするけどね。

47:名無しさん@お腹いっぱい。
01/11/20 15:56
複雑になればなるほど、所詮手動の解析では手間がかかる。
つまり、複雑度を限りなくあげてやればよい。

48:名無しさん@お腹いっぱい。
01/11/20 16:04
結局、複合化後のデータを抜き出すようなコード書けば
意味無いんじゃないの?
ネトゲなんかで課金がからむと真面目にやったほうがいいんだろうが、
普通のオフラインゲームであんまり気張ってもなぁ。

49:名無しさん@お腹いっぱい。
01/11/20 16:04
暗号化アルゴリズムをどう複雑にしたって、たとえば
bool decrypt(byte *out, byte *in, int len);
みたいな関数の入り口見つけられたら、そこからそのまま
ひっこぬかれておしまい。
アルゴリズムではなくてプログラムを複雑にすると
今度はプログラムが単に汚くなる。

50:48
01/11/20 16:05
>>49 かぶった。結婚する?(ワラ

51:名無しさん@お腹いっぱい。
01/11/20 16:18
こういう暗号化は、暗号化アルゴリズムをいかに
複雑にして解読を防ぐかじゃなくて、復号ルーチンを
どうリバースエンジニアリングから守るかだよ。

52:名無しさん@お腹いっぱい。
01/11/21 04:09 XcI+VzyT
皆さんソフトにリバースエンジニアリングを防ぐ建設的な手法を使って
いらっしゃいますか?(結局理論的には解析可能だから対策をしないと
いうのはとても簡単なことですが…)

>>51
>暗号化アルゴリズムをいかに複雑にして解読を防ぐかじゃなくて

おおむね同意します。でも暗号アルゴリズムなんてXORでもない限り
複雑なものを導入しても大してコストはかからないですよ。感覚としては
XORをかけるならAESかけるのもさして違いはないです。

53:52
01/11/21 04:13
>XORでもない限り
すみません "s/XORでもない限り/"

54:名無しさん@お腹いっぱい。
01/11/21 12:09
XORとAESってそうとう違うような・・・

55:名無しさん@お腹いっぱい。
01/11/21 13:01 kTxoHJqc
どうせ鍵を同梱するなら、XORでももっと凝った暗号でも
防御力は一緒だと思ってたんだけど、違うの?

56:名無しさん@お腹いっぱい。
01/11/21 13:45
>>55
鍵と暗号済みのデータがあれば、解読できるわけ?

57:名無しさん@お腹いっぱい。
01/11/21 14:46
ゲームを普通に起動して、
メモリ上に展開された解読済みデータを
ReadProcessMemory で抜き取るとか。

58:名無しさん@お腹いっぱい。
01/11/21 15:13 K8u4BtIq
>>49
グローバルなレジストフラグをプログラム全体に散りばめておいて、
レジストチェックルーチンの中でそのフラグを直接操作する。
こうすることで、レジストチェックルーチンをスキップしただけでは
動作しないようになる。
あとはひたすらチェックルーチンを冗長に複雑にする。
例えば、チェックルーチンは仮想マシンコードで実装する。
これによって直接の逆アセンブラは防げる。
あとは、そのルーチンを圧縮して、展開コードを仮想マシンで書いて
インタプリタで動かして、無駄なコードをつけまくって、ひたすら頑張る。

一度このシステムを作れば、プログラムにフラグを生めこむだけなので再利用はきくよ。

59:名無しさん@お腹いっぱい。
01/11/21 15:20
なんか話がいつのまにかレジストチェックルーチンの話に
すりかわってますぜ旦那・・・

60:名無しさん@お腹いっぱい。
01/11/21 15:27
みんなサウンドやBGMのコーデックに何使ってる?

61:名無しさん@お腹いっぱい。
01/11/21 15:45 K8u4BtIq
>>59
暗号化も鍵を隠すという点ではにたようなものでしょうが。

62:名無しさん@お腹いっぱい。
01/11/21 15:51
>>60
OggVorbis

63:名無しさん@お腹いっぱい。
01/11/21 16:10
暗号の鍵を暗号化する?w まぁがんばれや
ネットゲーの場合はときどきサーバからあたらしい
アルゴリズムの復号化DLLが送られてくる、とかで
結構なんとかなるかな。

64:名無しさん@お腹いっぱい。
01/11/21 17:21
>>60
漏れもOggVorbis使ってる

65:名無しさん@お腹いっぱい。
01/11/21 18:41
普通のゲームの場合、暗号化されたデータと鍵と復号ルーチンを全部配布してるわけで、
その辺が普通の暗号解読とは違う。

個人的にはあんまりむきになっても仕方ないと思ってるんだけど

66:名無しさん@お腹いっぱい。
01/11/21 20:11 16mzDT/7
鍵と金庫を一緒にユーザにしてんのに、
南京錠だろうがIDカードだろうが同じことだと思う今日この頃。
シェアウェアなら、パスワードにデータの解除キー混ぜたり
できるかもしらんけどどのみち気休めでんな。

67:名無しさん@お腹いっぱい。
01/11/21 20:12 16mzDT/7
s/してんのに/渡してんのに/

68:名前は開発中のものです。
01/12/16 02:56 inKSfJGH
age

69:名前は開発中のものです。
01/12/16 06:56
OggVorbis 重くない?
これ入れてから FPS が激減しちゃったんだけど・・。

70:名前は開発中のものです。
01/12/17 00:01 7KBcu3BJ
MP3 2%, OGG 5%, APE 15%, MPC 1%, AAC 15% (Celeron450MHz@Winamp における負荷調べ)

どこぞから拾ってきた参考資料
多少は重いかも

71:名前は開発中のものです。
01/12/17 01:57
www.din.or.jp/~glit/TheOddStage/Progs/audioplayer/
こんなのがある。CPU使用率調べ。

72:名前は開発中のものです。
01/12/17 06:58
>>71
やっぱ、mp3もoggも遅いマシンだと負荷は馬鹿にならないなー。

73:名前は開発中のものです。
01/12/17 06:58
いやそのページのPenIIIマシンが遅いという気はないんだが。にんともかんとも

74:名前は開発中のものです。
01/12/23 03:58 nVi8CRdJ
OggVorbis RC3 早くでないかな・・・。

75:名前は開発中のものです。
02/01/09 13:03 4uvwfI59
>74
でまして。

76:名前は開発中のものです。
02/01/09 23:33 SWMCUrMt
OggVorbis RC3 すごく音がいいぞ

77:名前は開発中のものです。
02/02/03 13:30
>>29,33
去年の話でなんですけど、閉鎖ということでご勘弁を。

78:名前は開発中のものです。
02/02/04 09:16 eg/wWGzG
>>76
160kbpsとか?

79:名前は開発中のものです。
02/04/26 09:07
プレイ中のゲームの変数改竄方法と対策について語り合ってるスレはないですか?

80:名前は開発中のものです。
02/04/26 10:44
プレイ中のゲームの変数改竄方法と対策について語り合ってるスレはないですか?

81:名前は開発中のものです。
02/04/26 11:43
>プレイ中のゲームの変数改竄方法と対策について語り合ってるスレはないですか?
プログラムコードを書き換えることで、変数改竄をするパターンが
多いです。なので、これに対する対策は、全てのアプリケーションデータを
プログラムコード全領域をキーとする暗号をかけてしまうことです。
こうすれば、プログラムコードを変化させようものならば、
アプリケーションデータも解凍時に支障が起きます。
プログラムコードが変更するたびにデータも作成しなければならないという
点がデメリットと、絶対に常駐するコード領域をキーにするというのが
必要条件です。

もっとも気休め程度の暗号なのですが。

82:名前は開発中のものです。
02/04/26 12:27
>>81
結局、コード書き換えされればいつかは改造されるのか。

オフラインなら良いかもしれないんだけど、ネットゲーだと致命的だよな。
課金とか絡んでくるし。
チートキャラだらけのネトゲに金払うなんてバカバカしいってことで
ゲームの存続にもかかわってくるから結構重要な問題かと…

83:名前は開発中のものです。
02/04/26 12:54
プレイ中にプログラムを切り替えてターゲットゲームの変数の増減を検索して
何の値であるか推定し、書き換えるアプリがありますね。
プロセスの切替時の各パラメータチェックサムの変化で書き換えを検出
できそうですが、いずれ高度な書き換えソフトが出ないとも...

84:名前は開発中のものです。
02/05/04 04:02
折れは男らしく全部ビットマップ
ダブルキュリックで中身が見える親切設計だ折れもユーザーも大ハッピー。まいったか

85:名前は開発中のものです。
02/05/14 09:00
ネットだと結局、改竄してもらっては困るデータ(能力値等)をサーバーに、
改竄してもどうでもいいデータ(テクスチャ)を置いて、完全にクライアント
とサーバーを分割するしかない。 というか、それでオケな気もする。

86:名前は開発中のものです。
02/05/14 21:45 x.mXxrcs
 

87:名前は開発中のものです。
02/08/22 20:45
>84
まいった。
アナタ最強でつ。

88:1
02/09/07 01:56
おお、このスレまだあったんだなぁ・・・(涙


89:名前は開発中のものです。
02/09/23 06:51
ねぇ3Dのデータ扱うのに「これ使っとけヽ(`Д´)ノゴルァ!!」って感じの
フォーマット教えて下さい……

90:名前は開発中のものです。
02/09/23 07:18 hVSm4E2G
自作

91:名前は開発中のものです。
02/09/23 07:56
xsi

92:名前は開発中のものです。
02/09/23 07:58
いややっぱしtmd使っとけ

93:名前は開発中のものです。
02/09/23 08:12
いやrokだろう

94:89
02/09/23 21:13
>91>92>93
ありがとうございます、試してみます。
でもみんな>90みたいに自作の独自フォーマット使ってたら(((( ;゜Д゜))))ガクガクブルブル

95:名前は開発中のものです。
02/09/23 23:07
マジレスすると世間では基本的に自作フォーマットだ。がんがれ

96:名前は開発中のものです。
02/09/28 22:55
>>66
個別に違う鍵を渡すなら漏洩元を特定でるるから無意味でもないのでは?

97:名前は開発中のものです。
03/02/23 02:53 pM6P4J9p
保守あげ

98:名前は開発中のものです。
03/02/23 03:12 1ggXx80g
            o.
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /   このスレは見苦しく.  /
           /  終了いたしました    /
          / ありがとうございました  /
          /                /
         /    モララーより     /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
  ∧_∧  /                /∧_∧
 ( ・∀・) /                /(・∀・ )
 (    )つ               ⊂(    )
 | | |                   | | |
 (__)_)                  (_(__)

99:名前は開発中のものです。
03/02/25 01:43 /DNQkTBe
データは全部変数に代入してコンパイラすればいいんではないか
というのはだめか?

100:名前は開発中のものです。
03/02/25 07:36 UeuqW1xz
                o.
                /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
               /   このスレは無事に .  /
               /  終了いたしました    /
              / ありがとうございました  /
              /                /
             /   ペイピッニダより     /
             / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
            /
          . /
   __<`∀´>./
  /__ \ /
  | |   |  |
  (_) (__)


101:名前は開発中のものです。
03/04/05 09:34 6xZbet/l
保守

102:名前は開発中のものです。
03/04/27 23:39 CROTLl3J
URLリンク(yokohama.cool.ne.jp)

103:名前は開発中のものです。
03/05/19 00:02 993Tdot1
??

104:名前は開発中のものです。
03/09/23 03:39 HNIyLmTg
>>99
ROMに焼くならそうするしかない。
static const指定して全部プログラムROMに詰め込む。

105:名前は開発中のものです。
03/10/03 23:27 qU13l1Ia
改造ソフトってパラメータがやたら増えてたりするみたいだが
それやると
チェックサムに引っかかってセーブデータ無効になったりしないか?
なんで皆平気で改造してるんだろ。
優秀で親切ひと、教えてください



106:名前は開発中のものです。
03/10/03 23:28 +EC7zeWT
マルチ氏ね

107:名前は開発中のものです。
03/10/04 00:06 sM2y81o/
>106
105さんは前のスレッドで撤退宣言してますよ

108:名前は開発中のものです。
03/10/04 00:52 xzRZ7GXR
>>105
ゲーム製作じゃなくてゲームプレーだろそれ。
板違いだって言ってんのに何でまたしつこくこの板で聞くんだ?

109:名前は開発中のものです。
03/10/04 01:01 YxrpxQrl
りょおかいしました、じゃ家庭用ゲーム板で伺います

プログラマじゃないとわからないだろうとおもったんですよ、、

110:名前は開発中のものです。
03/10/06 02:21 GOGRRG4D
画像データなら…
昔のしょぼい市販ゲームでは、ビットマップのヘッダ潰しただけってのも
あったけど、大体は、ランレングスかスライド辞書でOKだろ。

そういや、アンバランスのザナドゥはベタベタのビットマップだったな。
マスクデータも見えていや~ん(w

111:名前は開発中のものです。
03/10/09 00:40 5lC1R2nJ
スレ違いと思われるが、Susieプラグインを作ったりしてる人たちは、どうやって作っているのか知りたい。
delphi始めて少ししかたってない厨にはやはり無理なのだろうが

112:名前は開発中のものです。
04/04/15 13:03 /5QJcWoM
保守

113:名前は開発中のものです。
04/05/02 10:22 jvA7QL+W
保守

114:名前は開発中のものです。
04/05/09 02:10 OieRmYAk
>>111
susieなんて参考にしたら駄目。
あれは作者も認める失敗策。

115:名前は開発中のものです。
04/05/28 11:52 RHmeZuoM
基本的にゲーム内で使われるテクスチャやモデルデータなどは
どういった形で置かれているのでしょうか?
圧縮して鍵をつけておられるのでしょうか。
どなたか教えていただけますか。

116:名前は開発中のものです。
04/05/28 12:14 6Pc/e8Iv
基本などない

117:名前は開発中のものです。
04/05/28 20:57 K+pPvjca
フリーの一般ゲームは一般的なフォーマットをそのまま使っている事が多い
市販ゲームは独自形式が多いかな(単に適当なゴミヘッダつけてるだけかも)
18禁ゲームは画像を独自形式にする必要ありかと

118:名前は開発中のものです。
04/05/30 22:11 HM800C26
>>117
>18禁ゲームは画像を独自形式にする必要ありかと
bmpやjpgを抽出するソフトがあるから18禁では独自形式にしないと
すぐ見られちゃうな。

そして見られちゃうゲームが少なくない。

119:名前は開発中のものです。
04/06/15 09:25 Qit+XtM0
age

120:名前は開発中のものです。
04/06/20 20:07 S/v3KCiT
jpgやpngをビットシフト(?)させるだけでも十分なのかい?

121:名前は開発中のものです。
04/06/22 10:09 2/i7gsvf
解析するやつは何やってもやるんで、ほどほどでいいんでない。
解析時間>攻略時間 になるのがいいんだろうけど
最近はネットでツールが出回るのが問題だよなぁ・・・。

122:名前は開発中のものです。
05/03/05 20:09:12 iSU781a/
保守

123:名前は開発中のものです。
05/05/30 15:00:51 lHJfT2IG
保守

124:名前は開発中のものです。
05/06/15 15:45:12 G1JAVN4A
保守

125:名前は開発中のものです。
05/12/04 21:42:09 MDlMlQWK
∧∧
( 'A `)
(⊃⌒*⌒⊂)
/__ノωヽ__)
    
             _,.>
                   r "
   >>1       \    _
                    r-''ニl::::/,ニ二 ーー-- __
                 .,/: :// o l !/ /o l.}: : : : : : :`:ヽ 、
                  /:,.-ーl { ゙-"ノノl l. ゙ ‐゙ノノ,,,_: : : : : : : : : :ヽ、
              ゝ、,,ヽ /;;;;;;;;;;リ゙‐'ー=" _゛ =、: : : : : : : :ヽ、
              /  _________`゙ `'-- ヾ_____--⌒     `-: : : : : : : :
...-''"│    ∧  .ヽ.  ________   /   ____ ---‐‐‐ーー    \: : : : :
    !   /   .ヽ  ゙,ゝ、      /  ________rー''" ̄''ー、    `、: : :
    .l./     V   `'''ー-、__/__r-‐''"゛     ̄ ̄   \   ゙l: : :
                   l     .,.. -、、 _ ‐''''''''-、    l   !: :
                  |   /    .| .!     `'、  |   l: :
                      l   |     .l,,ノ     |  !   !: :
                       / '゙‐'''''ヽ、 .,,,.. -''''''''^^'''-、/  l   !: :
             r―- ..__l___    `´            l   /   /: :
                \      `゙^''''''―- ..______/_/   /: : :

126:名前は開発中のものです。
06/06/12 13:54:07 WiXqYYR1
過疎ー

127:名前は開発中のものです。
07/10/04 19:28:38 9SSXbkbl
あげ

128:名前は開発中のものです。
07/10/04 19:49:56 sxZnD3cC
jk

129:名前は開発中のものです。
07/10/20 03:45:43 mMbwj+l/
あーーーーげーーーーろーーーー

130:名前は開発中のものです。
07/10/24 15:45:37 8c657fo+
ファイル形式とはすこしずれるけど、
RPGのマップデータとかって誰が考えても似たようなものになるよね。
汎用の規格があればエディタを自作とかしなくていいと思うんだけど
だれかやってくれないかな。

131:名前は開発中のものです。
07/10/24 16:38:16 K40lbU4x
>>130
パフォーマンス気にしなくていい場合にはそれでいいと思うんだよ
それこそXMLで作ってもいいと思う

でも、ゲームってパフォーマンスが常に求められるから
メインのプログラムに最適化されたデータ構造にすると思うんだ
そうすると結局汎用ではなくなるのではないか。


132:名前は開発中のものです。
07/11/10 09:53:43 HPBAwh6H
スーファミのデータからモンスター画像やマップチップ取り出して
画像ファイルとして保存なんて出来る?

133:名前は開発中のものです。
07/11/11 13:37:35 tcvbomxH
>>132
可能か不可能かで言えば可能

134:名前は開発中のものです。
07/11/12 04:56:53 4ftyL+O2
難易度は?

135:名前は開発中のものです。
07/11/13 11:27:09 Zpdv0zqL
拡張子
bin ext dat 54
プレステだがこれでどうやって見ろと…

136:名前は開発中のものです。
07/11/16 12:49:07 bm3/TuGg
SFCの敵グラならたまに専門サイトで見かけるな

137:名前は開発中のものです。
07/12/07 15:25:51 hBFP3PRC
Windowsでシンプルに、構造体の内容をデータファイルとして
読み書きするフォーマットを考えてるんだけど、
みんなこういう場合はアラインメントいくつにしてる?
16バイト?

>>130
汎用なテキストフォーマットと、
それのパーサーが用意されていれば、
最適化したバイナリ作りも楽で良さそうだねぇ。
3DデータのdotXSIみたいな。

138:名前は開発中のものです。
07/12/07 21:52:36 PVWS/6/U
>>137
単純にバイナリで読み書きする。
構造体やクラスのサイズが変わったら泣く。

139:名前は開発中のものです。
07/12/08 03:44:36 +fSLRBme
構造体のパディングはコンパイラによって違うから、無理なんじゃねーの?

140:名前は開発中のものです。
07/12/08 18:17:52 8Q62CUho
やってから言え。

141:名前は開発中のものです。
07/12/09 12:05:04 jw/iz8O2
>>138-139
質問を理解できてないだろw

142:名前は開発中のものです。
08/07/10 05:54:52 nnoBQqoI
やるつもりはないが、やるなら1。ダミー変数でアライメント調節するのを前提で。
さもなくばVCデフォの8か、double無しという条件で4。
あまりアライメントを気にしたことがないので、16を指定する状況が思いつかない。


微妙に話がずれるが、ちょうどデータ構造化のライブラリがオープンソースになっていた。
C++とJavaとPython対応で、ライセンスはApache License 2.0。

Google,自社開発のデータ構造化ツール「Protocol Buffers」を公開
URLリンク(itpro.nikkeibp.co.jp)


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch