Bingで作成
まず、キャラクター作成の手順は以下のようになります。
• プロフィール(名前、性別、年齢など)を決める
• 能力値(STR、CON、SIZなど)をダイスロールで決める
• 職業を決める
• 技能ポイントと趣味ポイントを技能に割り振る
• バックストーリー(容姿、信念、重要な人々など)を決める
• 装備品を決める
これらの手順をPythonで実装するには、以下のような方針が考えられます。
• プロフィールはユーザーに入力してもらうか、ランダムに生成するか、あらかじめ用意したリストから選択するかのいずれかになります。Pythonではinput関数やrandomモジュールやリスト型などを使って実現できます。
• 能力値はダイスロールで決める必要があります。Pythonではrandomモジュールのrandint関数やchoice関数などを使ってダイスロールをシミュレートできます。また、能力値から導かれる属性(耐久力、正気度など)も計算しておく必要があります。
• 職業はルールブックに掲載されているものから選ぶことになります。Pythonでは辞書型やクラス型などを使って職業ごとに技能ポイントの算出方法や取得可能な技能などの情報を保持できます。また、ユーザーに職業を選択してもらうためにはinput関数やprint関数などを使ってメニュー表示や入力受付を行う必要があります。
• 技能ポイントと趣味ポイントは職業と能力値によって決まります。Pythonでは算術演算子や代入演算子などを使って計算や代入ができます。また、技能ポイントと趣味ポイントを技能に割り振る際にはユーザーに入力してもらう必要があります。Pythonでは辞書型やリスト型などを使って技能ごとに初期値や割り振った値などの情報を保持できます。また、ユーザーに技能ポイントと趣味ポイントの割り振り方を選択してもらうためにはinput関数やprint関数などを使ってメニュー表示や入力受付を行う必要があります。
• バックストーリーはユーザーに入力してもらうか、ランダムに生成するか、あらかじめ用意したリストから選択するかのいずれかになります。Pythonではinput関数やrandomモジュールやリスト型などを使って実現できます。また、バックストーリーの項目には技能と関連するものもありますので、それらに応じて技能にボーナスポイントを加える必要があります。Pythonでは辞書型やリスト型などを使って技能ごとにボーナスポイントの情報を保持できます。
• 装備品はルールブックに掲載されているものから選ぶことになります。Pythonでは辞書型やクラス型などを使って装備品ごとに価格やダメージなどの情報を保持できます。また、ユーザーに装備品を選択してもらうためにはinput関数やprint関数などを使ってメニュー表示や入力受付を行う必要があります。また、装備品の購入には年収や資産などの情報も必要です。Pythonでは変数や算術演算子などを使って年収や資産の計算や代入ができます。