プログラミング初心者。今後の勉学方針をかためる編!

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
テマリ

プログラミング初心者。今後の勉学方針をかためる編!

#1

投稿記事 by テマリ » 12年前

1,オンラインゲームについて。
MMORPG、シュミレーション、テーブルゲーム。この3つの種類を自作できるようにするにはどういった言語とどういう事を学ばなければいけないのか。
MMORPGの場合リネージュ等。シュミレーションの場合「信長の野望」等。テーブルゲームの場合Yahoo!ゲーム、モバゲー携帯版等。
2,セキュリティについて。
ウイルスバスター、ウイルスセキュリティ、よく使われているウイルス対策ソフトを自作できるようにするにはどういった言語とどういう事を学ばなければいけないのか。
サーバーに不正アクセスする犯罪を少し前に見ました。それらの対策方法。どうやって侵入されているのか。

上に書いてある事を教えてください。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#2

投稿記事 by テマリ » 12年前

付け足させてもらいます。
既にプログラミング知識を持っている方々の効率の良い勉強の仕方を教えてください。

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#3

投稿記事 by beatle » 12年前

個人的に思うのは、めちゃくちゃ効率が良い勉強方法はないだろうということです。
プログラミング言語は一つの言語ですから、外国語を習うみたいにコツコツ学習していくしかないと思います。
コツコツ学習のやり方は、僕の場合はプログラミングの教科書に載っているサンプルをいじったり、自分で1から考えて作ったり、他人のソースを読んだりという感じです。

さて、以下は僕はゲーム業界の人じゃないので内情に詳しいわけではありませんがネット上で得た知識を統合した結果です。
MMORPG、シミュレーション(「シュミ」ではありません)はC++が主流だろうということ、その理由の一つはC++用のゲームライブラリが多く存在することだそうです。
C++を使えば高速なソフトを作れるというのも、負荷が重いゲームを作るには適しています。

それから、(楽しい、売れる)ゲームを作るには高品質なグラフィックやサウンドも欠かせません。
ゲーム会社にはキャラクターグラフィックスを描く専門の人が居たり、音楽を作る専門の人が居たりするくらい重要です。
プログラミングよりグラフィックスやサウンドの制作の方が時間がかかるかもしれません。
3Dゲームなら3Dモデリングツールの使い方を学習する必要がありますね。

さて、まとめると、MMORPGやシミュレーションゲームを作るには
C++、グラフィックス、サウンド
が最低限必要だろうという結論になります。
茨の道だろうと思いますが、がんばってください。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#4

投稿記事 by テマリ » 12年前

beatleさん、とてもわかりやすい返信ありがとうございます。
外国語のように触れるのと使うのが一番いいんですね、勉強になります。
グラフィックスやサウンドについては一人では荷が重いので人に呼びかけるつもりです。



C++を覚える。
覚え方については意識しないでも触れる場所に置く(ドアに言語と解説セットの紙を貼る等)。
理解を深めるには自分で使う。

オンラインゲームのMMORPG、シミュレーション(←指摘ありがとうございます。)については上の3つのように進みました。
覚え方についてはたくさんの方々の声を聞かせて欲しいです。

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#5

投稿記事 by beatle » 12年前

「C++を覚える」とは何でしょうか。
プログラミング言語の学習は暗記ではないですから、「覚える」というより「考える」が主流だと思うんですけどね。
確かに標準ライブラリにどんなライブラリがあるかとか、そのくらいは覚えたほうがいいかも知れませんが、
重要なのはプログラムの設計の方です。いろいろある関数やクラスをどう組み合わせるか、プログラムの構成をどうするかということです。

僕が外国語の例を出してしまって誤解を招いているかもしれません。
確かに最初英語を学ぶときは、単語を暗記したり文法を暗記します。
これはプログラミング言語でも同様で、キーワードや標準関数、言語の文法(文、式、関数定義)などを暗記します。

しかし、外国語の勉強の目的は単語の暗記ではありません。外国語を使って文章を読み書きしたり、人と会話することが目的です。
プログラミング言語もやはりプログラミング言語を使ってプログラムを書いたり、他人のソースを読んだりすることが目的です。

テマリさんが「覚える」ことに重きを置いているようなので心配しました。
プログラミング言語は実際に手を動かしてプログラムを書くのが重要なのです。
学校の外国語のテストのごとく、標準関数をすべて挙げなさい、みたいなテストはありませんしリファレンスサイトもありますから、「完全に暗記しよう」と意気込むより、プログラムを書きまくりましょう!

・・・もしもC++の言語規格をマスターしようというなら暗記科目ですけどね!(笑)

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#6

投稿記事 by テマリ » 12年前

すごく的確な助言ありがとうございます。
覚えるのは関数ばっかりで後は組み合わせなんですね。勉強になります。
リファレンスサイト教えてくれてありがとうございます。
最初は関数を大体頭に入れて他人のソースを読む事に専念します。大体読めるようになったら書きまくります(`・∀・´)

他人のソースなんですが、コンパイルされているやつなどは逆コンパイルして読めるソースになりますか?
逆コンパイルソフトを作るとしたら何言語を学べばいいですか?

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#7

投稿記事 by beatle » 12年前

普通は逆コンパイルしてもたいして読めるソースにはなりません。
なぜならば、コンパイルされた段階でコメントやマクロは削除されますし、識別子ももしかしたら削除されます。
whileやforやifも復元できないでしょうね。

逆コンパイルしたソースを読み解くのは、それこそ普通のソースをスラスラ読み書きできるようになってからです。
そもそも世界にはオープンソースなソフトがたくさんありますからそういうソフトウェアのソースを読めば事足りると思いますよ。

(もしかして、信長の野望などを解析して勉強しようとかいう話?)

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#8

投稿記事 by テマリ » 12年前

何度も返信ありがとうございます。
信長の野望等を逆コンパイルして読みそれをコピーして書きをしようと思ってたのですができないようですね(´;ω;`)

後blatleさんや他のプログラマさん方は逆コンパイルしたソースを読めますか?
またそれを元に元のソースを作れますか?
それともう一つクラッキング対策って何ができますか?




※一応
セキュリティについてはウイルスの関数定義?をたくさん詰め込んだものというところまでわかりました。
プログラムほとんどが関数をたくさん詰め込んだものだというところまで理解できました。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#9

投稿記事 by softya(ソフト屋) » 12年前

とりあえず勉強方法は基礎の基礎的な文法を理解して、プログラムを組んで見ることです。
組み方が悪い点などは、ここで質問すれば沢山指摘してもらえます(沢山指摘されすぎてめげる人も沢山いるので申し訳ないですが)。
最初から大きなプログラムだと挫折するので小さなものから徐々に大きなものを組むのが一番ですが段階を踏むのが苦手な人がいますので難しいところです。
一番練習しなくてはいけないことは、物事を細部に渡り分析して手順としてまとめる分析・設計能力です。
これがちゃんと出来ないとプログラムを組むことは出来ません。
1,オンラインゲームについて。
MMORPG、シュミレーション、テーブルゲーム。この3つの種類を自作できるようにするにはどういった言語とどういう事を学ばなければいけないのか。
MMORPGの場合リネージュ等。シュミレーションの場合「信長の野望」等。テーブルゲームの場合Yahoo!ゲーム、モバゲー携帯版等。
【MMORPG】
一番難易度が高く開発規模が大きいのはリネージュ等の3DのMMORPGですね。開発ノウハウがある前提でも数十人で数年の歳月が必要で個人ではどう考えても無理です。高性能サーバーやサーバー管理者も必要なので運営費も高騰します。
規模を縮小、オープンフィールド(ダンジョンOnly)にしない、登場人物、モンスターを減らすなどをしても少人数グループで開発するとしたらプログラマーの技術力と相当のリーダーシップが必要です。
開発:C++、DirectX、3Dの技術全般、ネット技術、サーバー開発ノウハウ、大人数グループ開発ノウハウなど数年で身につける事が難しい技術を要求される。4年生ゲーム専門学校で教えるレベルよりも難しい内容なので想定挫折率99.9999%ぐらい。

【信長の野望】
ファミコン時代からあるので技術的難易度は、あの程度のグライフィックで良ければ低くなります。
ただプログラミングの規模はそれなりにあるので初心者が手を出すだすと頓挫するでしょう。
開発:C言語、DXライブラリ、2Dの技術全般、シミュレーションゲームのノウハウなど。【MMORPG】よりは難易度が低くなります。それでも想定挫折率99.99%ぐらい。

【テーブルゲーム】
簡単なものならプログラミング入門から半年ぐらいで出来ます。
ブラウザで動くものなら言語もFlashやJavascriptでC++よりは難易度が低いです。
スマホ専用だと、JavaやObjective-Cで組むこともあります。
開発:FlashやJavascript、簡単な2D、簡単なルール。想定挫折率99.9%ぐらい。

まぁ、全般的にプログラミングの挫折率が高いのでもっと挫折する可能性が高いかも知れません。
2,セキュリティについて。
ウイルスバスター、ウイルスセキュリティ、よく使われているウイルス対策ソフトを自作できるようにするにはどういった言語とどういう事を学ばなければいけないのか。
サーバーに不正アクセスする犯罪を少し前に見ました。それらの対策方法。どうやって侵入されているのか。
OSやネットワークの膨大な知識が必要です。
とりあえず、オープンソースで公開されているLinuxOSのソースコードを読むことLinuxのセキュリティなどを話し合っているコミュティに参加すること(もちろん英語)など地道な活動が必要です。
プログラミングを初めて数年でこの域に達することはほぼ不可能ですけどね。
Widnowsだとウイルスバスター、ウイルスセキュリティなどの会社に就職したほうが早道でしょうね。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#10

投稿記事 by softya(ソフト屋) » 12年前

テマリ さんが書きました:何度も返信ありがとうございます。
信長の野望等を逆コンパイルして読みそれをコピーして書きをしようと思ってたのですができないようですね(´;ω;`)
無理ですと言うか真似したプログラムを作る方が遥かに早く作れます。
テマリ さんが書きました: 後blatleさんや他のプログラマさん方は逆コンパイルしたソースを読めますか?
またそれを元に元のソースを作れますか?。
読めますが理解するとなると相当の時間がかかります。
上にも書いたように動作を真似るプログラムを自力で組んだほうが早いです。
テマリ さんが書きました: それともう一つクラッキング対策って何ができますか?
暗号化や自己書き換え監視とかノウハウはありますが、どれも高難度です。
実の所、マメなバージョンアップが一番の対策ですね。
テマリ さんが書きました: ※一応
セキュリティについてはウイルスの関数定義?をたくさん詰め込んだものというところまでわかりました。
プログラムほとんどが関数をたくさん詰め込んだものだというところまで理解できました。
プログラムはどれもそうなんですけどね。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#11

投稿記事 by テマリ » 12年前

ソフト屋さん細かく広い知識の返信ありがとうございます。

作る知識と技術を得ようと考えていましたが方針を変えます。
両方犯罪をするために聞いてるようなものですが犯罪を犯すつもりはありません。
知識が欲しいだけです。

オンラインゲームにプラグイン?みたいに新しい設定を組み込む事は可能ですか?トロイの木馬で入れる等。
チートがこのようだと聞いています。

サーバーに不正侵入する事は可能ですか?また仮に不正侵入するとしたらどんな知識と技術がいりますか?
テレビで犯罪として捕まってるのを見たことがあります。



暗号化や自己書き換え監視とかノウハウを作るのは高難度だと聞きましたが破るのにいる知識はリネージュを作るような膨大な知識とサーバーと人がいりますか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#12

投稿記事 by softya(ソフト屋) » 12年前

とりあえず、5年~10年頑張る気がないと何も出来ませんよ。
【補足】
ブラウザゲームの半問程度も頑張る気に成れないのでしょうか?
テマリ さんが書きました: オンラインゲームにプラグイン?みたいに新しい設定を組み込む事は可能ですか?トロイの木馬で入れる等。
チートがこのようだと聞いています。
サーバー側にプログラムがあるので出来ることは限られますが自分のクライアントだけなら出来ないことはないでしょう。
まぁ大抵はチートは禁止されているのでバンされても文句は言えません。
他の人に迷惑をかけるならモラル的には非常に悪いと思います。

トロイの木馬はウィルスなので作るだけで犯罪です。
テマリ さんが書きました: サーバーに不正侵入する事は可能ですか?また仮に不正侵入するとしたらどんな知識と技術がいりますか?
テレビで犯罪として捕まってるのを見たことがあります。
はい捕まります。
ちなみに、知っていたとしてもここでノウハウを明かせるはずもありません。
犯罪ですからね。
簡単にいえばサーバーなどに使われているLinuxOSなどのソースコードを読んでセキュリティバグを見つけて、そのバグでOSを騙して侵入します。
テマリ さんが書きました:暗号化や自己書き換え監視とかノウハウを作るのは高難度だと聞きましたが破るのにいる知識はリネージュを作るような膨大な知識とサーバーと人がいりますか?
純粋なハッキングは高度な知識の産物ですのでゲームを作るよりもある意味難しいです。
人の開発したノウハウを流用すればよく分からずにサーバーに潜り揉める可能性もありますが法律違反で刑事罰の対象になります。
サーバーは不要です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#13

投稿記事 by テマリ » 12年前

たびたびソフト屋さん返信ありがとうございます。
5年どころか1年も頑張れません。なので半年ぐらいのテーブルゲームを頑張って作ろうと思います。

Yahoo!の怪盗ロワイヤルとかもテーブルゲームですか?
テーブルゲームがどんなものか教えてください。

Yahoo!の怪盗ロワイヤルとかクラッキングするとしたら何の知識と技術がいるのでしょうか?
テーブルゲームにサーバーはいりませんか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#14

投稿記事 by softya(ソフト屋) » 12年前

テマリ さんが書きました:たびたびソフト屋さん返信ありがとうございます。
5年どころか1年も頑張れません。なので半年ぐらいのテーブルゲームを頑張って作ろうと思います。

Yahoo!の怪盗ロワイヤルとかもテーブルゲームですか?
テーブルゲームがどんなものか教えてください。
テーブルゲームが分からずに聞いているのですか?
まぁ、普通はトランプとかオセロのようなゲームの事を言います。
オセロはAIの難易度が高いですが。

ロワイヤルは限りなくテーブルゲームでしょうね。
トランプに比べれば難易度は高いでしょう。サーバーも重要です。

【補足】
半年で出来るようなテーブルゲームは、簡単パズル、ブラック・ジャックのようなトランプゲームがやっとです。
それも対人戦があるようなサーバー主体なゲームは半年では無理ですね。
テマリ さんが書きました: Yahoo!の怪盗ロワイヤルとかクラッキングするとしたら何の知識と技術がいるのでしょうか?
テーブルゲームにサーバーはいりませんか?
サーバー側に機能があるので、それはサーバー侵入行為で犯罪です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#15

投稿記事 by beatle » 12年前

クラッキングに非常にこだわっているのを見るに、勉強方法を教えてもらうというのは単なる名目で、実のところクラッキングがしたくてしたくてたまらないのでしょうか?
もしそうなら、この掲示板ではそういう話題はふさわしくないと思いますし、教えてくれる人も居ませんから諦めてください。

tk@univ.mobile

Re: プログラミング初心者。今後の勉学方針をかためる編!

#16

投稿記事 by tk@univ.mobile » 12年前

tkmakwins15です。大学で携帯からの投稿なので、ユーザー名が普段とは違いますがお許しください。

大抵のゲームソフトは、その実行可能なバイナリコードを逆コンパイルするのは、使用許諾契約に違反します。

それに、逆コンパイルされたコードでプログラミングを学習するなんて絶対無理です。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#17

投稿記事 by テマリ » 12年前

ソフト屋さん返信ありがとうございます。
怪盗ロワイヤルのようなゲームを作るにはどれぐらいの期間がいりますか?
サーバーはどれぐらいのものがいりますか?



beatle さんが書きました:クラッキングに非常にこだわっているのを見るに、勉強方法を教えてもらうというのは単なる名目で、実のところクラッキングがしたくてしたくてたまらないのでしょうか?
もしそうなら、この掲示板ではそういう話題はふさわしくないと思いますし、教えてくれる人も居ませんから諦めてください。
すみません。もうクラッキングについて聞きません。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#18

投稿記事 by テマリ » 12年前

tk@univ.mobileさん返信ありがとうございます。
逆コンパイルもダメだったんですね。勉強になります。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#19

投稿記事 by softya(ソフト屋) » 12年前

テマリ さんが書きました:ソフト屋さん返信ありがとうございます。
怪盗ロワイヤルのようなゲームを作るにはどれぐらいの期間がいりますか?
プログラミングが出来るのなら、さほど難しくはありません。
ただ大人数接続のネットワーク関係のノウハウは結構難しいと思います。
サーバー側とクライアント側の勉強が必要なので2年?ぐらい死ぬ気で頑張る気合いがあるのなら作れるでしょう。

[補足]
まぁ、数十冊の本は買う必要があるのでお金もかかります。
言語関係だけでもHTML,CSS,javascript,Jquery,Flash,Javaなどなど。
テマリ さんが書きました: サーバーはどれぐらいのものがいりますか?
接続される人数次第です。
同時接続が数人なら家庭用PCと家庭のネットワークでも可能です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
nullptr
記事: 239
登録日時: 12年前

Re: プログラミング初心者。今後の勉学方針をかためる編!

#20

投稿記事 by nullptr » 12年前

昨今の携帯端末ゲームは、ゲーム自体のプログラムは正直小学生でも頑張れば作れるような気がするものばかりですが、
ゲームとは別の技術として通信関連の技術というものが必要になってくるわけです。

なにやらオンラインゲームに興味がおありのようですが、まず一般的な人は言語習得に半年から数年、オフラインで簡単なゲームを作るのでさえ更に半年はかかるものです。RPGなどならもっとかかるでしょう。
なにかに興味があって調べる、聞くというのは素晴らしいと思います。

ですが、書き込みを見るとまだゲームを実際に作ったこともないようですし、逆コンパイルやチートだとか、侵入対策だとかを考えるのは早いと思いますよ。
きっと本当にオンラインに興味があるんだと感じるので、そういうつまらないことに気を持っていかれないで、素直に言語を学んで、1からやってみたほうがいいとわたしは思います。
 
 
✜ で C ご ✜
: す + 注 :
¦ か + 文 ¦
?
Is the は :
order C++? ✜
     糸冬   
  ――――――――
  制作・著作 NHK
 
 

アバター
bitter_fox
記事: 607
登録日時: 13年前
住所: 大阪府

Re: プログラミング初心者。今後の勉学方針をかためる編!

#21

投稿記事 by bitter_fox » 12年前

softya(ソフト屋) さんが書きました:とりあえず、5年~10年頑張る気がないと何も出来ませんよ。
テマリ さんが書きました: 5年どころか1年も頑張れません。なので半年ぐらいのテーブルゲームを頑張って作ろうと思います。
半年ぐらいのテーブルゲームの半年ぐらいというのは開発期間の事でしょうか?それとも学習期間のことでしょうか?
学習期間をおっしゃってるのであれば次は無視してください。
ソフト屋さんがおっしゃってるのは開発期間ではなくプログラミングやその他の学習に5~10年頑張る気がないと・・・という意味だと思います。

後ディスコンパイルに幻想のようなものを抱いてるように思えます。
いったん機械語に落とされるとそこから高級言語に復元させるのは非常に困難です。
極めて簡単なプログラム(HelloWorld)

コード:


#include <stdio.h>

int main(void)
{
	printf("HelloWorld\n");

	return 0;
}

をコンパイルして、あるディスコンパイラでディスコンパイルしてみました。

すると次のようなコードが大量に生成されました。

コード:

L0000076F()
{
	/* unknown */ void  bx;
	/* unknown */ void  si;
	/* unknown */ void  di;



    di = cx;
    si = dx;
    *di :: "\r\n$7";
    ax = M00000040;
    *(di + "un under Win32\r\n$7") = *(di + "un under Win32\r\n$7") + dh;
    dx = *di;
    (save)ax;
    asm("int3");
    ax = ax + 1;
    if(( *(bp + di + 0x2fa) = *(bp + di + 0x2fa) + al) || dx == 1) {
        *di = "Not a directory";
        ax = ax + 1;
        *(bx + si) = *(bx + si) + al;
        *(bx + si) = *(bx + si) + dl;
        al = al | bl + ch;
    }
    *(bx + si) = *(bx + si) + ax + "Not a directory" + 1;
    *(bx + si) = *(bx + si) + ax + "Not a directory" + 1;
    dx = *di;
    ax = (al ^ 0xa1) + 1;
    *(bp + di + 0x3da) = *(bp + di + 0x3da) + cl;
    (fsave)((frestore)) * *(bp + di + 0x4a);
    *((bx & !dx) + si) = *((bx & !dx) + si) + al;
    L00008F4A(0, bx, 0x2000, 1);
    M0000c085 = ax;
    if(!( *(bx + si) = *(bx + si) + al)) {
        ax = 0;
    } else {
        *bx = bx;
        *(bx + si) = *(bx + si) + 1;
    }
}

残念ながら自分の手元ではHelloWorldを出力する部分は見つけられませんでした。(ちなみに出力されたものは三万行ぐらいありました)
こんなコードを基にプログラムを組むなんて無理です。

唯一望みがあるのはディスアセンブリでしょうか。
こちらは簡単にHelloWorldを出力する部分を見つけることができました。

コード:

00401150  /. 55             PUSH EBP
00401151  |. 8BEC           MOV EBP,ESP
00401153  |. 68 28A14000    PUSH HelloWor.0040A128                   ; /Arg1 = 0040A128 ASCII "HelloWorld"
00401158  |. E8 0B270000    CALL HelloWor.00403868                   ; \HelloWor.00403868
0040115D  |. 59             POP ECX
0040115E  |. 33C0           XOR EAX,EAX
00401160  |. 5D             POP EBP
00401161  \. C3             RETN
アセンブリは機械語と一対一対応させたものなので容易にアセンブリの形で出力することができます。

また、クラッキング行為をどのように行うのかを知る目的がセキュリティの向上だとしてもクラッキング行為に転用できてしまうため教えることはできません。
言うなれば、クラッキング行為を行う技術は諸刃の剣なわけです。

たいちう
記事: 418
登録日時: 13年前

Re: プログラミング初心者。今後の勉学方針をかためる編!

#22

投稿記事 by たいちう » 12年前

裏技的にチートが使えたらいいな、という欲求は自然の事だと思います。
プログラミング習得の当面の目標にしても良いのではないでしょうか。

しかし、素晴らしいオンラインゲームの開発者達が、セキュリティ面に関してはど素人、
というようなことはまずありえませんので、彼らの想定外の方法でチートを行う事は困難です。
彼らとの知恵比べ技術比べであり、彼らに喧嘩を売ることにもなります。
十分な技術を身に付けた頃には、開発者への尊敬の念も生まれ、
大抵は分別が付いているのでしょう。


bitter_fox さん
> また、クラッキング行為をどのように行うのかを知る目的がセキュリティの向上だとしても
> クラッキング行為に転用できてしまうため教えることはできません。
> 言うなれば、クラッキング行為を行う技術は諸刃の剣なわけです。

脆弱なシステムに警鐘を与えると言う理由で、手口と対処方法を公開している本やサイトもあります。
教えて君がハッカーやクラッカーになれるわけがないので、教えてもしょうがないのですが。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#23

投稿記事 by softya(ソフト屋) » 12年前

たいちう さんが書きました:bitter_fox さん
> また、クラッキング行為をどのように行うのかを知る目的がセキュリティの向上だとしても
> クラッキング行為に転用できてしまうため教えることはできません。
> 言うなれば、クラッキング行為を行う技術は諸刃の剣なわけです。

脆弱なシステムに警鐘を与えると言う理由で、手口と対処方法を公開している本やサイトもあります。
教えて君がハッカーやクラッカーになれるわけがないので、教えてもしょうがないのですが。
フォーラムルール(規約)の禁止行為として「犯罪を冗長する行為、また犯罪につながる特定の手段を問う行為」とあるのでDixqさんの趣旨に従うという意味ではこの掲示板では一切情報を出さないのが良いかと私は思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

ISLe
記事: 2650
登録日時: 13年前
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#24

投稿記事 by ISLe » 12年前

たいちう さんが書きました:脆弱なシステムに警鐘を与えると言う理由で、手口と対処方法を公開している本やサイトもあります。
教えて君がハッカーやクラッカーになれるわけがないので、教えてもしょうがないのですが。
それって事例じゃなくて具体的にどこどこの(第三者の)サイトが脆弱なのでアタックしてみましょうって書いてあるのですか?
だとしたら不正アクセス禁止法に触れる気がしますけど。

アバター
tk-xleader
記事: 158
登録日時: 13年前
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#25

投稿記事 by tk-xleader » 12年前

テマリ さんが書きました:tk@univ.mobileさん返信ありがとうございます。
逆コンパイルもダメだったんですね。勉強になります。
駄目かどうかは、そのゲームソフトの使用許諾契約の内容によります。しかし、大抵の場合は禁止されているはずです。
ちゃんと契約内容を確認したほうがいいと思います。

それと、今後の勉学方針を固めるということであれば、まずはDirectXやDXライブラリ、OpenGLといったグラフィックス関係について調べてみるといいと思います。

たいちう
記事: 418
登録日時: 13年前

Re: プログラミング初心者。今後の勉学方針をかためる編!

#26

投稿記事 by たいちう » 12年前

softya(ソフト屋)さん

> この掲示板では一切情報を出さないのが良いかと私は思います。

掲示板の方針は理解しています。
それと助長ですね。フォーラムルールから間違っていますね。


ISLeさん

> それって事例じゃなくて具体的にどこどこの(第三者の)サイトが脆弱なので
> アタックしてみましょうって書いてあるのですか?
> だとしたら不正アクセス禁止法に触れる気がしますけど。

とんでもない。そんな露骨な警鐘ではありません。
あくまでも一般的(初歩的)な手口と対処方法です。
具体的なサイトの情報や、脆弱なサイトの見つけ方等は、
直接的には書いていませんでした。
その本やサイトの内容を十分理解すれば、
見つける助けになるかもしれません。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#27

投稿記事 by softya(ソフト屋) » 12年前

たいちう さんが書きました:softya(ソフト屋)さん

> この掲示板では一切情報を出さないのが良いかと私は思います。

掲示板の方針は理解しています。
それと助長ですね。フォーラムルールから間違っていますね。
申し訳ないですが、何をおしゃりたいのかよく分からないのですが。
ルールに問題があれば具体的に指摘してもらえると助かります。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

トントン
記事: 100
登録日時: 13年前

Re: プログラミング初心者。今後の勉学方針をかためる編!

#28

投稿記事 by トントン » 12年前

softya(ソフト屋) さんが書きました:
たいちう さんが書きました:softya(ソフト屋)さん

> この掲示板では一切情報を出さないのが良いかと私は思います。

掲示板の方針は理解しています。
それと助長ですね。フォーラムルールから間違っていますね。
申し訳ないですが、何をおしゃりたいのかよく分からないのですが。
ルールに問題があれば具体的に指摘してもらえると助かります。
冗長→助長という意味では?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#29

投稿記事 by softya(ソフト屋) » 12年前

トントン さんが書きました:
softya(ソフト屋) さんが書きました:
たいちう さんが書きました:softya(ソフト屋)さん

> この掲示板では一切情報を出さないのが良いかと私は思います。

掲示板の方針は理解しています。
それと助長ですね。フォーラムルールから間違っていますね。
申し訳ないですが、何をおしゃりたいのかよく分からないのですが。
ルールに問題があれば具体的に指摘してもらえると助かります。
冗長→助長という意味では?
あぁ!確かに誤字ですね。 Dixqさんに伝えておきます。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#30

投稿記事 by テマリ » 12年前

ソフト屋さん返信ありがとうございます。
   本を買ってみます。

新月獅子さん返信ありがとうございます。
   他の方も言うようにプログラミングは時間をかけるものなんですね><
   本を買って挫けるまでやってみます。

bitter_foxさん返信ありがとうございます。
   ディスコンパイルとディスアセンブリの違いをわかりやすい説明ありがとうございます。
   まずは本を買って勉強してみます。

たいちうさん返信ありがとうございます。
   チートもクラッキングも立派な技術なんですね。
   本を買って勉強してからまた聞きに来ます。

tkmakwins15さん返信ありがとうございます。
   使用許諾契約の内容はゲームソフトによって違うんですね。勉強になります。
   DirectX、DXライブラリ、OpenGLこれらの本を探して買ってみます。



まとめ
1,オンラインゲーム等。
オンラインゲームを作るのは大変多くの知識と技術と時間と費用がかかる事がわかりました。
返信くださった方々ありがとうございます。

2,セキュリティ等。
セキュリティは多くの知識と技術と時間と最新の情報が必要なことが分かりました。
返信くださった方々ありがとうございます。

更にまとめ
今後の勉強方針についてはDirectX、DXライブラリ、OpenGL等の本を買って読んだりでかためます。
言語については関数を見てソースを読んだりで慣らしていこうと思います。

これで「今後の勉強方針をかためる編!」は終わりです。
変身くださった方々本当にありがとうございました。

たいちう@出先

Re: プログラミング初心者。今後の勉学方針をかためる編!

#31

投稿記事 by たいちう@出先 » 12年前

> たいちうさん返信ありがとうございます。
>    チートもクラッキングも立派な技術なんですね。
>    本を買って勉強してからまた聞きに来ます。

難易度が非常に高いけど、悪いことなので全然立派ではないです。
掲示板の方針に抵触するので、その類の質問はご遠慮ください。

kura

Re: プログラミング初心者。今後の勉学方針をかためる編!

#32

投稿記事 by kura » 12年前

テマリ さんが書きました:    チートもクラッキングも立派な技術なんですね。
   本を買って勉強してからまた聞きに来ます。
不正アクセス等に対してのセキュリティについて学ぶということですよね。
本買って勉強というか...普通にWeb系いけばいい話では?( PHP, Perl, Ruby, Python etc )
入門書レベルの本でもSQLインジェクション対策ぐらいは載ってます。というかWeb系やるなら
これくらいわかってないとヤバイでしょう。
(実際に事件も起きています。プレイステーションネットワーク個人情報流出などもこれが原因だったはずです。)

アバター
h2so5
副管理人
記事: 2212
登録日時: 13年前
住所: 東京
連絡を取る:

Re: プログラミング初心者。今後の勉学方針をかためる編!

#33

投稿記事 by h2so5 » 12年前

テマリ さんが書きました:    チートもクラッキングも立派な技術なんですね。
   本を買って勉強してからまた聞きに来ます。
チートやクラッキングというのは「武器」のようなものでしょう。
武器に使われている技術自体は特別なものではないし、良い悪いはありません。

ひとつ言えるのは、この掲示板に武器を持ち込むことは禁止されている、ということです。

テマリ

Re: プログラミング初心者。今後の勉学方針をかためる編!

#34

投稿記事 by テマリ » 12年前

h2so5 さんが書きました: チートやクラッキングというのは「武器」のようなものでしょう。
武器に使われている技術自体は特別なものではないし、良い悪いはありません。

ひとつ言えるのは、この掲示板に武器を持ち込むことは禁止されている、ということです。

とてもわかりやすい説明です。納得しました。
ありがとうございます。

閉鎖

“C言語何でも質問掲示板” へ戻る