建築イベント実装手順
ソースコード
報酬設定
lib/conf/class/BuildEventItemConfig.class.php
/**********建築イベント*********************/
//建築イベントレベル達成ボーナス
//type7(クリスタル)、type4(船素材)の時はitemをコメントアウト
$this->_config[1][3] = $pre_config->getItem($pre_config::GOLD, 70000); // 70000GOLD
$this->_config[1][7] = $pre_config->getItem($pre_config::CRYSTAL, 10); // クリスタル 10
$this->_config[1][12] = $pre_config->getItem($pre_config::FLAG, 1); // 必勝フラッグ
$this->_config[1][17] = $pre_config->getItem($pre_config::MATE_WOOD, 50); // 木材 50
$this->_config[1][20] = $pre_config->getItem($pre_config::EXP_12000, 1); // 伝説の海賊の魂 1$this->_config[1][3]<br>
最初のindexが建築イベント判別用、次のindexがレベル<br>
イベント設定
lib/conf/class/BuildEventConfig.class.php
$this->_config['start_time'] = strtotime("2023-06-02 16:00:00");//開始日時
$this->_config['end_time'] = strtotime("2023-06-11 23:59:59");//終了日時
$this->_config['announcement_info'] = 2290;//予告告知No
$this->_config['info_no'] = 2291;//告知No
$this->_config['info_present'] = 2292;//報酬ページ(島テーマは告知
$this->_config['info_reward'] = $this->_config['info_present'];//報酬ページ
$this->_config['type'] = 1;//1:建築イベント、2:島テーマイベント
$this->_config['event_build_no'] = 10040;//イベントで立てる建物
$this->_config['build_item_name'] = "白ヘビの神殿";//報酬建物名
$this->_config['build_name'] = $this->_config['build_item_name'];//建てるイベント建物名
$this->_config['event_name'] = "白ヘビの神殿";//イベント名(島テーマの背景名)
/////////////// 以下は対応するイベントでのみ編集が必要 //////////////////////////////
...
//報酬建物(建築イベント
$this->_config['event_object']['small'] = 6118;//小
$this->_config['event_object']['middle'] = 6119;//中
$this->_config['event_object']['big'] = 6120;//大
$bonus_big_object = 6121;//建築イベント大2つ目
//結果発表(建築イベント
$this->_config['ranking']['info_no'] = 2293;//info
$this->_config['ranking']['swf_no'] = 695;//swf- type<br>
2つの建築系イベントを管理しているため、切り分けのため設定
- event_build_no<br>
仕様書「イベント建物ID」
- bonus_ratio<br>
スペシャル効果の倍率<br>
仕様書「変更内容」を確認
- end_time<br>
仕様書「スペシャル効果終了日時」
- theme_object<br>
仕様書「報酬建物」
- $bonus_theme_object<br>
仕様書「報酬建物SP」
建物データ生成スクリプト
lib/exec/tool_jrce_status.php
$build_background = 2;
$release_no = 102; //今回割り振りたいrelease_no
...
}else{
$build_name = $_df['event_build_item_name'];
//通常建築イベント
$object_status = array();
...
$object_status['obj_id'] = 6118;
$object_status['obj_name'] = $build_name.'【小】';
$object_status['obj_lv'] = 50;
$object_status['population'] = 10; //人口
$object_status['peace'] = 10; //統率
$object_status['business'] = 0; //生産
$object_status['item'] = 0; //bonus_rato:0-×:1-◯:2-◎ 10以上は期間限定特別アイテム
$object_status['popular'] = 50; //人口増加率
$object_status['plus_popular'] = 1; //人口増加数
$object_status['cost'] = 4490;//need_gold
$object_status['build_time'] = 6*3600;
$object_status['step'] = 5; //全lv固定
$object_status['collect_time'] = 20*3600; //集金時間
$object_status['collect_money'] = 3000; //集金額
$object_status['need_business'] = 99999999;
$object_status['bonus_type'] = 0;//スペシャル効果 1:アイテム、2:人口
$object_status['bonus_time'] = 0;//期限
$object_status['function_no'] = 0;//1:背景変化
$object_status['background_name'] = '';//背景の名前
$object_status['release_no'] = $release_no++;
...仕様書「建物ステータス」を参照に数値を調整<br>
建築イベントの場合、【小】、【中】、【大】、【大】SPの設定が必要
- $build_background<br>
建築イベントは2固定
- $release_no<br>
現在の数値+10
建物データ登録
報酬建物
スクリプトで生成<br>
cd /jr-web/Docker_ds #環境によって変化
docker-compose exec web bash
cd /home/web/jr-web/lib/exec/
ENVIRONMENT=develop PF=yamada HTTP_HOST=127.0.0.1 IS_DOCKER=true php tool_jrce_status.phpイベント建物
<span style="color:red;">その他のデータ登録をローカルで実施しているため、ローカル環境の管理画面から登録</span><br>イベントのデータ登録系 > イベント建築登録 を選択<br>
<div style="width:300px;"></div>
ID検索にイベント建物IDを入れて検索<br>
対象の建物の編集ボタンを押す<br>
各項目を仕様書を参考に入力
- 必要建築時間(秒)<br>
仕様書「建物時間」シートのB列の必要建築時間(秒)をコピー
- 建築必要GOLD<br>
仕様書「建物時間」シートのE列の建築必要GOLDをコピー
入力内容を確認し登録
csv出力
cd ./jrye-db
php bin/mysql2csv.php jrye master_object_data master_object_data_detail master_object_data_lvもし建築情報に変更がなければ、master_object_data_detail,master_object_data_lvの更新はなし