ハクソク

世界を動かす技術を、日本語で。

TI-82/83/83用ドラッグウォーズ (2011)

概要

本記事は、TI-BASICで作成されたDrug Warシミュレーションゲームのソースコードとその機能解説。
ゲームは借金返済と資産増加を目的に、1ヶ月間の売買活動を行う。
ランダムイベントや警察との遭遇がゲーム進行に影響。
各種コマンドや操作方法も詳細に解説。
ゲームの各画面やロジックを日本語で整理。

Drug War シミュレーションゲーム解説

  • タイトル画面

    • ゲーム名、バージョン、スローガン(JUST SAY NO.)表示。
    • ゲーム開始時の各種変数の初期化(所持金、借金、在庫、ダメージなど)。
  • イントロ & ルール説明

    • IBM版オリジナルゲームであることの紹介。
    • 借金返済および1ヶ月間での資産最大化が目的。
    • 警察の取り締まりやリスク存在。
    • 各種ドラッグの価格帯(コカイン、ヘロイン、アシッド、ウィード、スピード、ルーズ)。
    • コマンド入力方法(頭文字やYES/NOで選択)。
  • ゲーム進行の基本ロジック

    • 各ターンでドラッグ価格やイベントをランダム決定。
    • イベント例:
      • ライバルによる安売り
      • 警察の摘発
      • 市場価格の急変
      • サブウェイでの強盗被害
      • 新しいトレンチコート購入提案
      • 武器購入イベント
      • サブウェイでのアイテム発見
      • 警察との遭遇・追跡戦
  • 警察との遭遇時の行動

    • 銃の所持数やダメージ値の確認
    • 逃走または戦闘の選択
      • 逃走成功で次ターンへ
      • 戦闘ではランダムで命中・被弾判定
      • ダメージ50で死亡(ゲームオーバー)
      • 全員撃退時は現金入手・治療イベント発生
  • 売買・移動・銀行・ローンシャーク操作

    • 価格表示:各ドラッグの価格・所持金確認
    • トレンチコート:所持ドラッグ・空き容量表示
    • 購入・販売:数量指定、所持金・在庫・容量を自動計算
    • 移動:各エリア選択(ブロンクス、ゲットー、セントラルパーク、マンハッタン、コニーアイランド、ブルックリン)
      • サブウェイ移動で日数経過、金利増加
    • ローンシャーク:借金返済・追加借入(上限あり)
    • 銀行:残高確認、入金・出金操作
  • ゲーム終了条件とスコア

    • 31日経過または死亡でゲーム終了
    • 最終スコアは(銀行+所持金-借金)で算出、1〜100のスコア表示
    • 再プレイ選択、終了時のメッセージ表示

コマンド・操作一覧

  • W:ウィード
  • L:ルーズ
  • A:アシッド
  • H:ヘロイン
  • C:コカイン
  • S:スピード
  • 1:YES
  • 2:NO

イベント・ランダム要素

  • 安売り・価格暴落・暴騰イベント
  • 強盗被害:所持金減少
  • トレンチコート購入:容量増加
  • 武器購入:銃所持数増加
  • ランダム拾得:サブウェイで在庫増加
  • 警察とのバトル:逃走・戦闘・被弾のリスク

ゲームの戦略ポイント

  • 価格変動を見極めた売買
  • 借金管理と資産の最大化
  • 警察との遭遇リスク回避
  • 容量管理とトレンチコート活用
  • 銀行利用による資産保全

まとめ

  • Drug Warはシンプルながらも戦略性と運要素が絡むシミュレーションゲーム。
  • ゲーム内の英語コマンドや操作方法を把握することで、効率的なプレイが可能。
  • イベント発生時の判断やリスク管理が高スコアのカギ。

Hackerたちの意見

このゲームは私にとって本当に特別なんだ!高校の時にハマって、今でも印象に残ってる。Drugwarsは私の情熱プロジェクト、Farmhandに直接影響を与えたんだ。ここに出てきて嬉しいな! :)
このゲームが大好きだった。数学を勉強する代わりにずっと遊んでたんだ、残念ながら。TI-83+の他のアプリのおかげで試験に合格できたけど… AIの台頭でちょっと救われた気分。もうすぐ、誰も小さなコンピュータなしでは何もできなくなるだろうね。
Algebra 2 : AKA DrugwarsとSnake。運良く1年早く進んで、そのクラスを再履修しなくて済んだ(笑)。その後、微積分と離散数学に進んだ。
みんながTi電卓でマリオのクローンを持ってた時、俺はPalmでそれにインスパイアされたゲームをやってたんだ。名前は「Space Trader」。
ゲームにハマってたのは良かったね ;-)
プログラミングの初体験はTI-83で、クラスで友達に遊ばせた選択肢型アドベンチャーゲームは絶対忘れない。
知らない人のために言うと、このゲームは1984年にDOSで始まったんだ。
このバージョンのLudes…確かに1984年だね。
それがBBSのドアゲームになったんだ!
TI-83 Basicは、私が本当にマスターしたと感じた最初のプログラミング言語だった。最初のCSの大学の授業では、TI Basicでコードを書いて、それをC++に翻訳してた。DrugwarsとBowlingは、TI-Basicで書かれた本当に印象的なゲームだった。でも、z80アセンブリを発見した時は魔法みたいだった。父が働いていた大学のオフィスに行って(そこには2本のT1インターネット回線があった)アセンブリゲームをダウンロードして試すのはすごくワクワクしたよ(当時は中学2年生だった)。Bill NagelのTurbo BreakoutやSnake、後にはAShell、Penguins、グレースケールのマリオに驚かされた…でも、最も完成度が高くてリプレイ性のあるゲームは、Jimmy MardellのTI-86のSqrxzとZTetrisだと思う。GalaxianとFalldownもいい感じだった。昔、z80アセンブリのソースをダウンロードして、1インチくらいの紙に印刷して、理解しようと何週間も持ち歩いたことがある… なんかすごくクールだったし(電池を抜かないと計算機が壊れちゃうこともあった)、プログラムにランダムな16進数のペアを入力してアセンブリとして実行するのも面白かった。「C063」をアセンブリとして実行すると、TI-83では無限ループで大量のランダムなテキストがスクロールしてた。TIのウェブサイト戦争を覚えてる人いる?TI Files(後のTI Philes)は「低レベルの弱いticalc.org」よりも「ずっとすごかった」…でも、どっちが今も残ってるか見てみてよ :-)
ticalc.orgがまだ生きてるのに驚いてる。懐かしさが半端ない。Joltimaが俺にアセンブリを学ばせるきっかけになった。TI-86でその時代を先取りしてたんだ。グラフ計算機でターン制のフル機能RPGだよ。歴史がまだオンラインでアクセスできるのが嬉しい。
> ビル・ネーゲル、12歳の俺にとっては畏敬の念を抱かせる名前だった。最初は、どうやってあんな素晴らしいゲームを作ったのか分からなかったけど、TI-BASICしか理解してなかったから、衝撃的だった。
うん、ticalc.orgを定期的にチェックして、ゼルダの「リンクの目覚め」のポートのデモが更新されるのを期待してたよ。
90年代にHP-48用のこのゲームのクローンを作ったんだ。頑張ってググれば今でも見つかるよ。いい思い出だな。
俺のGXは90年代後半のやつで、メタカーネル搭載のゴムだらけの49Gよりも長持ちしたんだ。もし掘り出したら、シリアルケーブルもあるし、sysrplガイドの印刷物もあるよ。結構分厚い印刷だったな。
俺の「面白い事実」は、TI-83+のマニュアルを読んで始めたってこと。9年生のほとんどをTI-BASICとグラフ関数を使って、ストリートファイターのスティックフィギュアクローンを作ってた。最終的には、計算機の画面が一度に8行しか表示できないから、鉛筆と紙でコーディングに切り替えた。どうやって同じ計算機で2人プレイをサポートするものを作ったのか、全然わからないけど、GOTOやLABELを使ってた。俺の一番好きな最適化は、頭を円じゃなくて六角形にすることだった。6本の線を描くのがすごく早かったからね。
同じだけど、俺のはTI-84で、ゲームは三目並べだった。完璧な「AI」があって、「プレイヤー数: 0」を入力できるんだ。
俺のはTI-81で、マルチプレイヤーのスコーチドアースのクローンだった。リアルな物理、風、ランダムな地形生成とかもあって、2.4KB全部とTI-BASICが提供するすべての名前付き変数を使ったよ。
7年生の誕生日にTI-86の電卓が欲しかったんだ。プログラムができるからね。あと、クラスメートがTI-83+でASMゲームを見せてくれたのも影響してるかも。9年生の時には、特定の代数問題を解くためのプログラムを書いて、画面にステップバイステップの「作業」を表示してた。試験中にコードの致命的なバグに気づいたのを覚えてる。宿題や勉強の問題では完璧に動いてたから、驚いたな。結局、テストを解くよりも修正に時間をかけちゃった!これが初めてのP1プロダクションバグの経験だったんだと思う。ポリノミアルについて学ぶはずだったのに、エッジケースについても学んじゃった。
俺の友達に90年代後半の9年生で、才能あるアーティストがいた。彼はTI-82で美しいピクセルアートのハードコアポルノを作ってた。いくつかのシーンを作って、各シーンは2つのフレームの間でループするように設定してたんだ。その解像度とfpsでの動きは、すごくリアルだったよ…。
> 1900年代後半 うわ、神様、なんでそんなこと言うの?
HP 48シリーズ(おそらく49/50やPrimeも)でも使えるよね。すごく優れてるし。全てのRPNに敬礼!
15年前、ポケットストリートファイターってゲームがあって(ストリートファイターのキャラが赤ちゃんバージョンになってるやつ)、TI-89でもサクサク動いてた!リュウとか6キャラくらいがいたよ。本当に印象的だった。昔の中では一番クオリティが高かったと思う。見つけた!「Texas Fighters」っていう名前だったよ。https://youtu.be/zZIqFJHe3yU?is=sVowojfWws9uwwRl
TI-83+でこれをいつもプレイしてたのを覚えてる。その電卓で本当にプログラムを学んだんだ。TI-BASICでプログラムを書いてたけど、主に数学や科学の授業のための方程式を解くためだったな。でもゲームもいくつか作った。もうずいぶん前のことだからTI-BASICのことはあんまり覚えてないけど、高校の時は結構得意だったよ。