Merge branch 'devel' of ssh://storage.hided.net:2525/devsam/core into devel
This commit is contained in:
@@ -31,8 +31,8 @@ CREATE TABLE `member` (
|
|||||||
`NAME` VARCHAR(64) NOT NULL,
|
`NAME` VARCHAR(64) NOT NULL,
|
||||||
`PICTURE` VARCHAR(64) NULL DEFAULT 'default.jpg',
|
`PICTURE` VARCHAR(64) NULL DEFAULT 'default.jpg',
|
||||||
`IMGSVR` INT(1) NULL DEFAULT '0',
|
`IMGSVR` INT(1) NULL DEFAULT '0',
|
||||||
`acl` TEXT NOT NULL DEFAULT '{}' COMMENT 'json',
|
`acl` TEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`penalty` TEXT NOT NULL DEFAULT '{}' COMMENT 'json',
|
`penalty` TEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`GRADE` INT(1) NULL DEFAULT '1',
|
`GRADE` INT(1) NULL DEFAULT '1',
|
||||||
`REG_NUM` INT(3) NULL DEFAULT '0',
|
`REG_NUM` INT(3) NULL DEFAULT '0',
|
||||||
`REG_DATE` DATETIME NOT NULL,
|
`REG_DATE` DATETIME NOT NULL,
|
||||||
@@ -43,9 +43,12 @@ CREATE TABLE `member` (
|
|||||||
UNIQUE INDEX `ID` (`ID`),
|
UNIQUE INDEX `ID` (`ID`),
|
||||||
UNIQUE INDEX `EMAIL` (`EMAIL`),
|
UNIQUE INDEX `EMAIL` (`EMAIL`),
|
||||||
UNIQUE INDEX `kauth_id` (`oauth_id`),
|
UNIQUE INDEX `kauth_id` (`oauth_id`),
|
||||||
INDEX `delete_after` (`delete_after`)
|
INDEX `delete_after` (`delete_after`),
|
||||||
|
CONSTRAINT `json1` CHECK (json_valid(`acl`)),
|
||||||
|
CONSTRAINT `json2` CHECK (json_valid(`penalty`))
|
||||||
)
|
)
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
COLLATE='utf8mb4_general_ci'
|
||||||
|
ENGINE=Aria;
|
||||||
|
|
||||||
-- 로그인 로그 테이블
|
-- 로그인 로그 테이블
|
||||||
CREATE TABLE `member_log` (
|
CREATE TABLE `member_log` (
|
||||||
@@ -53,12 +56,14 @@ CREATE TABLE `member_log` (
|
|||||||
`member_no` INT(11) NOT NULL,
|
`member_no` INT(11) NOT NULL,
|
||||||
`date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
`date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
`action_type` ENUM('reg','try_login','login','logout','oauth','change_pw','make_general','access_server','delete') NOT NULL,
|
`action_type` ENUM('reg','try_login','login','logout','oauth','change_pw','make_general','access_server','delete') NOT NULL,
|
||||||
`action` TEXT NULL DEFAULT NULL COMMENT 'JSON',
|
`action` TEXT NULL DEFAULT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `action` (`member_no`, `action_type`, `date`),
|
INDEX `action` (`member_no`, `action_type`, `date`),
|
||||||
INDEX `member` (`member_no`, `date`)
|
INDEX `member` (`member_no`, `date`),
|
||||||
|
CONSTRAINT `json` CHECK (json_valid(`action`))
|
||||||
)
|
)
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
COLLATE='utf8mb4_general_ci'
|
||||||
|
ENGINE=Aria;
|
||||||
|
|
||||||
###################
|
###################
|
||||||
# KV storage
|
# KV storage
|
||||||
@@ -69,9 +74,10 @@ CREATE TABLE if not exists `storage` (
|
|||||||
`key` VARCHAR(40) NOT NULL,
|
`key` VARCHAR(40) NOT NULL,
|
||||||
`value` TEXT NOT NULL,
|
`value` TEXT NOT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `key` (`namespace`, `key`)
|
UNIQUE INDEX `key` (`namespace`, `key`),
|
||||||
|
CONSTRAINT `json` CHECK (json_valid(`value`))
|
||||||
)
|
)
|
||||||
COLLATE='utf8mb4_general_ci'
|
COLLATE='utf8mb4_bin'
|
||||||
ENGINE=Aria;
|
ENGINE=Aria;
|
||||||
|
|
||||||
CREATE TABLE `login_token` (
|
CREATE TABLE `login_token` (
|
||||||
@@ -86,5 +92,4 @@ CREATE TABLE `login_token` (
|
|||||||
INDEX `by_date` (`user_id`, `expire_date`)
|
INDEX `by_date` (`user_id`, `expire_date`)
|
||||||
)
|
)
|
||||||
COLLATE='utf8mb4_general_ci'
|
COLLATE='utf8mb4_general_ci'
|
||||||
ENGINE=Aria
|
ENGINE=Aria;
|
||||||
;
|
|
||||||
@@ -47,6 +47,11 @@ class SetBlockScout extends \sammo\BaseAPI
|
|||||||
return "권한이 부족합니다.";
|
return "권한이 부족합니다.";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$gameStor = new KVStorage($db, 'game_env');
|
||||||
|
$blockChangeScout = $gameStor->getValue('block_change_scout')??false;
|
||||||
|
if ($blockChangeScout){
|
||||||
|
return "임관 설정을 바꿀 수 없도록 설정되어 있습니다.";
|
||||||
|
}
|
||||||
|
|
||||||
$nationID = $me['nation'];
|
$nationID = $me['nation'];
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,84 @@
|
|||||||
|
<?php
|
||||||
|
namespace sammo\Command\General;
|
||||||
|
|
||||||
|
use \sammo\{
|
||||||
|
DB, Util, JosaUtil,
|
||||||
|
General,
|
||||||
|
ActionLogger,
|
||||||
|
GameConst, GameUnitConst,
|
||||||
|
LastTurn,
|
||||||
|
Command
|
||||||
|
};
|
||||||
|
|
||||||
|
use \sammo\Constraint\Constraint;
|
||||||
|
use \sammo\Constraint\ConstraintHelper;
|
||||||
|
|
||||||
|
use function sammo\tryRollbackInheritUniqueItem;
|
||||||
|
use function sammo\tryUniqueItemLottery;
|
||||||
|
|
||||||
|
class che_은퇴 extends Command\GeneralCommand{
|
||||||
|
static protected $actionName = '은퇴';
|
||||||
|
|
||||||
|
static protected $reqAge = 60;
|
||||||
|
|
||||||
|
protected function argTest():bool{
|
||||||
|
$this->arg = null;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function init(){
|
||||||
|
|
||||||
|
$general = $this->generalObj;
|
||||||
|
|
||||||
|
$this->setNation();
|
||||||
|
$reqAge = static::$reqAge;
|
||||||
|
|
||||||
|
$this->fullConditionConstraints=[
|
||||||
|
ConstraintHelper::ReqGeneralValue('age', '나이', '>=', $reqAge, "나이가 {$reqAge}세 이상이어야 합니다.")
|
||||||
|
];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCommandDetailTitle(): string
|
||||||
|
{
|
||||||
|
$name = $this->getName();
|
||||||
|
$reqAge = static::$reqAge;
|
||||||
|
return "{$name}({$reqAge}세 이상, 2턴)";
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCost():array{
|
||||||
|
return [0, 0];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getPreReqTurn():int{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getPostReqTurn():int{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function run():bool{
|
||||||
|
if(!$this->hasFullConditionMet()){
|
||||||
|
throw new \RuntimeException('불가능한 커맨드를 강제로 실행 시도');
|
||||||
|
}
|
||||||
|
|
||||||
|
$db = DB::db();
|
||||||
|
|
||||||
|
$general = $this->generalObj;
|
||||||
|
$date = $general->getTurnTime($general::TURNTIME_HM);
|
||||||
|
|
||||||
|
$logger = $general->getLogger();
|
||||||
|
|
||||||
|
$general->rebirth();
|
||||||
|
$logger->pushGeneralActionLog("은퇴하였습니다. <1>$date</>");
|
||||||
|
|
||||||
|
$this->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
|
tryUniqueItemLottery($general);
|
||||||
|
$general->applyDB($db);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
namespace sammo\Event\Action;
|
||||||
|
use sammo\Util;
|
||||||
|
use sammo\DB;
|
||||||
|
use sammo\KVStorage;
|
||||||
|
|
||||||
|
class BlockScoutAction extends \sammo\Event\Action{
|
||||||
|
public function __construct(private ?bool $blockChangeScout = null){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function run(array $env){
|
||||||
|
$db = DB::db();
|
||||||
|
$db->update('nation', [
|
||||||
|
'scout'=>1
|
||||||
|
], true);
|
||||||
|
if($this->blockChangeScout !== null){
|
||||||
|
$gameStor = new KVStorage($db, 'game_env');
|
||||||
|
$gameStor->setValue('block_change_scout', $this->blockChangeScout);
|
||||||
|
}
|
||||||
|
|
||||||
|
return [__CLASS__, $db->affectedRows()];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -252,6 +252,8 @@ class RaiseInvader extends \sammo\Event\Action
|
|||||||
$logger->pushGlobalHistoryLog("<L><b>【이벤트】</b></>이민족의 기세는 그 누구도 막을 수 없을듯 합니다!");
|
$logger->pushGlobalHistoryLog("<L><b>【이벤트】</b></>이민족의 기세는 그 누구도 막을 수 없을듯 합니다!");
|
||||||
$logger->flush();
|
$logger->flush();
|
||||||
|
|
||||||
|
$gameStor->setValue('block_change_scout', false);
|
||||||
|
|
||||||
$db->update('plock', [
|
$db->update('plock', [
|
||||||
'plock' => 0
|
'plock' => 0
|
||||||
], true);
|
], true);
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
<?php
|
||||||
|
namespace sammo\Event\Action;
|
||||||
|
use sammo\Util;
|
||||||
|
use sammo\DB;
|
||||||
|
use sammo\KVStorage;
|
||||||
|
|
||||||
|
class UnblockScoutAction extends \sammo\Event\Action{
|
||||||
|
public function __construct(private ?bool $blockChangeScout = null){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function run(array $env){
|
||||||
|
$db = DB::db();
|
||||||
|
$db->update('nation', [
|
||||||
|
'scout'=>0
|
||||||
|
]);
|
||||||
|
|
||||||
|
if($this->blockChangeScout !== null){
|
||||||
|
$gameStor = new KVStorage($db, 'game_env');
|
||||||
|
$gameStor->setValue('block_change_scout', $this->blockChangeScout);
|
||||||
|
}
|
||||||
|
|
||||||
|
return [__CLASS__, $db->affectedRows()];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -327,6 +327,7 @@ class GameConstBase
|
|||||||
'che_증여',
|
'che_증여',
|
||||||
'che_헌납',
|
'che_헌납',
|
||||||
'che_하야',
|
'che_하야',
|
||||||
|
'che_은퇴',
|
||||||
'che_거병',
|
'che_거병',
|
||||||
'che_건국',
|
'che_건국',
|
||||||
'che_선양',
|
'che_선양',
|
||||||
|
|||||||
@@ -2378,6 +2378,9 @@ class GeneralAI
|
|||||||
}
|
}
|
||||||
|
|
||||||
$tryBuying = false;
|
$tryBuying = false;
|
||||||
|
if ($general->getNPCType() < 2 && $relGold >= $goldCost * 3 && $relRice >= $riceCost * 3){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
if ($this->generalPolicy->can상인무시) {
|
if ($this->generalPolicy->can상인무시) {
|
||||||
if ($relRice * 1.5 < $relGold && $relRice < $riceCost * 2) {
|
if ($relRice * 1.5 < $relGold && $relRice < $riceCost * 2) {
|
||||||
$tryBuying = true;
|
$tryBuying = true;
|
||||||
|
|||||||
@@ -35,6 +35,15 @@
|
|||||||
],
|
],
|
||||||
["OpenNationBetting", 1, 1000],
|
["OpenNationBetting", 1, 1000],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -38,6 +38,15 @@
|
|||||||
],
|
],
|
||||||
["OpenNationBetting", 1, 1000],
|
["OpenNationBetting", 1, 1000],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -727,6 +727,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -873,6 +873,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -798,6 +798,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -775,6 +775,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -750,6 +750,15 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -756,6 +756,15 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -763,6 +763,15 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -749,6 +749,15 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -741,6 +741,15 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -744,6 +744,15 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -741,6 +741,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -763,6 +763,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -42,6 +42,15 @@
|
|||||||
],
|
],
|
||||||
["OpenNationBetting", 1, 1000],
|
["OpenNationBetting", 1, 1000],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -701,6 +701,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -709,6 +709,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -712,6 +712,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -711,6 +711,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -109,6 +109,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -702,6 +702,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -110,6 +110,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -268,6 +268,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -265,6 +265,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -420,6 +420,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -251,6 +251,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -707,6 +707,14 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -710,6 +710,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -713,6 +713,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -380,6 +380,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -711,6 +711,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -715,6 +715,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -272,5 +272,14 @@
|
|||||||
"initialActions":[
|
"initialActions":[
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -289,5 +289,14 @@
|
|||||||
"initialActions":[
|
"initialActions":[
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -394,6 +394,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -333,6 +333,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -388,6 +388,15 @@
|
|||||||
|
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -768,5 +768,20 @@
|
|||||||
[0, "플랑크톤", null, 0, null, 60, 33, 81, 0, 160, 300, null, "발명"],
|
[0, "플랑크톤", null, 0, null, 60, 33, 81, 0, 160, 300, null, "발명"],
|
||||||
[0, "퐁퐁부인", null, 0, null, 71, 47, 84, 0, 160, 300, null, null],
|
[0, "퐁퐁부인", null, 0, null, 71, 47, 84, 0, 160, 300, null, null],
|
||||||
[0, "사이타마", null, 0, null, 83, 105, 74, 0, 160, 300, null, "무쌍", "압도적인 힘이라는 건 참 시시한 거야."]
|
[0, "사이타마", null, 0, null, 83, 105, 74, 0, 160, 300, null, "무쌍", "압도적인 힘이라는 건 참 시시한 거야."]
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -598,5 +598,20 @@
|
|||||||
[999, "프란체스카", null, 0, null, 1, 1, 1, 0, -15, 300, null, null],
|
[999, "프란체스카", null, 0, null, 1, 1, 1, 0, -15, 300, null, null],
|
||||||
[999, "하모니트", null, 0, null, 1, 1, 1, 0, -15, 300, null, null],
|
[999, "하모니트", null, 0, null, 1, 1, 1, 0, -15, 300, null, null],
|
||||||
[999, "후지와라", null, 0, null, 1, 1, 1, 0, -15, 300, null, null]
|
[999, "후지와라", null, 0, null, 1, 1, 1, 0, -15, 300, null, null]
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -786,5 +786,20 @@
|
|||||||
[0, "장선", null, 0, null, 72, 71, 48, 0, 160, 300, null, null],
|
[0, "장선", null, 0, null, 72, 71, 48, 0, 160, 300, null, null],
|
||||||
[0, "뇌서", null, 0, null, 76, 74, 61, 0, 160, 300, null, null],
|
[0, "뇌서", null, 0, null, 76, 74, 61, 0, 160, 300, null, null],
|
||||||
[0, "번궁", null, 0, null, 71, 67, 58, 0, 160, 300, null, null]
|
[0, "번궁", null, 0, null, 71, 67, 58, 0, 160, 300, null, null]
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -661,5 +661,20 @@
|
|||||||
],
|
],
|
||||||
"general_ex":[
|
"general_ex":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -661,5 +661,20 @@
|
|||||||
],
|
],
|
||||||
"general_ex":[
|
"general_ex":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -505,5 +505,20 @@
|
|||||||
],
|
],
|
||||||
"general_ex":[
|
"general_ex":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -224,5 +224,20 @@
|
|||||||
[0, "국화", null, 0, "석영고원", 83, 87, 88, 0, 1973, 2100, null, "환술"],
|
[0, "국화", null, 0, "석영고원", 83, 87, 88, 0, 1973, 2100, null, "환술"],
|
||||||
[0, "목호", null, 0, "석영고원", 94, 73, 94, 0, 1973, 2100, null, null],
|
[0, "목호", null, 0, "석영고원", 94, 73, 94, 0, 1973, 2100, null, null],
|
||||||
[0, "로켓단", null, 0, null, 85, 85, 85, 0, 1973, 2100, null, null, "우리가 그렇게 궁금하시다면 대답해 드리는게 인지상정\n이 세계의 파괴를 막기 위해! 이 세계의 평화를 지키기 위해! \n사랑과 진실, 어둠을 뿌리고 다니는...! \n포켓몬의 감초 귀"]
|
[0, "로켓단", null, 0, null, 85, 85, 85, 0, 1973, 2100, null, null, "우리가 그렇게 궁금하시다면 대답해 드리는게 인지상정\n이 세계의 파괴를 막기 위해! 이 세계의 평화를 지키기 위해! \n사랑과 진실, 어둠을 뿌리고 다니는...! \n포켓몬의 감초 귀"]
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -659,5 +659,20 @@
|
|||||||
],
|
],
|
||||||
"general_ex":[
|
"general_ex":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -841,6 +841,15 @@
|
|||||||
"trade":100
|
"trade":100
|
||||||
}],
|
}],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -109,6 +109,15 @@
|
|||||||
["Date", "==", 181, 1],
|
["Date", "==", 181, 1],
|
||||||
["RaiseNPCNation"],
|
["RaiseNPCNation"],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@@ -673,5 +673,20 @@
|
|||||||
],
|
],
|
||||||
"general_ex":[
|
"general_ex":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"initialEvents":[
|
||||||
|
|
||||||
|
],
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -854,6 +854,15 @@
|
|||||||
"trade":100
|
"trade":100
|
||||||
}],
|
}],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -36,6 +36,14 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"events":[
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -10,5 +10,16 @@
|
|||||||
"expandCityDefaultCost": 30000,
|
"expandCityDefaultCost": 30000,
|
||||||
"expandCityCostCoef": 250,
|
"expandCityCostCoef": 250,
|
||||||
"npcBanMessageProb":1
|
"npcBanMessageProb":1
|
||||||
}
|
},
|
||||||
|
"events":[
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
|
]
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@@ -80,6 +80,15 @@
|
|||||||
"trade":100
|
"trade":100
|
||||||
}],
|
}],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -27,6 +27,15 @@
|
|||||||
"agri": "+1200",
|
"agri": "+1200",
|
||||||
"comm": "+1200"
|
"comm": "+1200"
|
||||||
}]
|
}]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -180,6 +180,15 @@
|
|||||||
],
|
],
|
||||||
["OpenNationBetting", 1, 1000],
|
["OpenNationBetting", 1, 1000],
|
||||||
["DeleteEvent"]
|
["DeleteEvent"]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"destroy_nation", 1000,
|
||||||
|
["and",
|
||||||
|
["Date", ">=", 183, 1],
|
||||||
|
["RemainNation", "==", 1]
|
||||||
|
],
|
||||||
|
["BlockScoutAction"],
|
||||||
|
["DeleteEvent"]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
+216
-231
@@ -1,7 +1,6 @@
|
|||||||
############################################################################
|
##############################
|
||||||
## 장수 테이블
|
## 장수 테이블
|
||||||
############################################################################
|
##############################
|
||||||
|
|
||||||
CREATE TABLE `general` (
|
CREATE TABLE `general` (
|
||||||
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`owner` INT(11) NOT NULL DEFAULT '0',
|
`owner` INT(11) NOT NULL DEFAULT '0',
|
||||||
@@ -76,9 +75,9 @@ CREATE TABLE `general` (
|
|||||||
`tournament` INT(1) NULL DEFAULT '0',
|
`tournament` INT(1) NULL DEFAULT '0',
|
||||||
`vote` INT(1) NULL DEFAULT '0',
|
`vote` INT(1) NULL DEFAULT '0',
|
||||||
`newvote` INT(1) NULL DEFAULT '0',
|
`newvote` INT(1) NULL DEFAULT '0',
|
||||||
`last_turn` TEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`last_turn`)),
|
`last_turn` TEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`aux` LONGTEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`aux`)),
|
`aux` LONGTEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`penalty` TEXT NULL DEFAULT '',
|
`penalty` TEXT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
INDEX `nation` (`nation`, `npc`),
|
INDEX `nation` (`nation`, `npc`),
|
||||||
INDEX `city` (`city`),
|
INDEX `city` (`city`),
|
||||||
@@ -89,30 +88,25 @@ CREATE TABLE `general` (
|
|||||||
INDEX `officer_level` (`nation`, `officer_level`),
|
INDEX `officer_level` (`nation`, `officer_level`),
|
||||||
INDEX `officer_city` (`officer_city`, `officer_level`),
|
INDEX `officer_city` (`officer_city`, `officer_level`),
|
||||||
INDEX `name` (`name`),
|
INDEX `name` (`name`),
|
||||||
INDEX `last_refresh` (`lastrefresh`)
|
INDEX `last_refresh` (`lastrefresh`),
|
||||||
)
|
CONSTRAINT `json1` CHECK (json_valid(`last_turn`)),
|
||||||
DEFAULT CHARSET=utf8mb4
|
CONSTRAINT `json2` CHECK (json_valid(`aux`)),
|
||||||
ENGINE=Aria;
|
CONSTRAINT `json3` CHECK (json_valid(`penalty`))
|
||||||
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
CREATE TABLE `general_turn` (
|
CREATE TABLE `general_turn` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`general_id` INT(11) NOT NULL,
|
`general_id` INT(11) NOT NULL,
|
||||||
`turn_idx` INT(4) NOT NULL,
|
`turn_idx` INT(4) NOT NULL,
|
||||||
`action` VARCHAR(20) NOT NULL,
|
`action` VARCHAR(20) NOT NULL,
|
||||||
`arg` TEXT NULL DEFAULT NULL,
|
`arg` TEXT NULL DEFAULT NULL COLLATE 'utf8mb4_bin',
|
||||||
`brief` TEXT NULL DEFAULT NULL,
|
`brief` TEXT NULL DEFAULT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `general_id` (`general_id`, `turn_idx`),
|
UNIQUE INDEX `general_id` (`general_id`, `turn_idx`),
|
||||||
INDEX `action` (`action`, `turn_idx`, `general_id`)
|
INDEX `action` (`action`, `turn_idx`, `general_id`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
##############################
|
||||||
ENGINE=Aria
|
|
||||||
;
|
|
||||||
|
|
||||||
###########################################################################
|
|
||||||
## 국가 테이블
|
## 국가 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
|
|
||||||
CREATE TABLE `nation` (
|
CREATE TABLE `nation` (
|
||||||
`nation` INT(6) NOT NULL AUTO_INCREMENT,
|
`nation` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
`name` VARCHAR(64) NOT NULL COLLATE 'utf8mb4_bin',
|
`name` VARCHAR(64) NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
@@ -133,29 +127,35 @@ CREATE TABLE `nation` (
|
|||||||
`surlimit` INT(4) NULL DEFAULT '72',
|
`surlimit` INT(4) NULL DEFAULT '72',
|
||||||
`tech` float NULL DEFAULT '0',
|
`tech` float NULL DEFAULT '0',
|
||||||
`power` INT(8) NULL DEFAULT '0',
|
`power` INT(8) NULL DEFAULT '0',
|
||||||
`spy` TEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`spy`)),
|
`spy` TEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`level` INT(1) NULL DEFAULT '0',
|
`level` INT(1) NULL DEFAULT '0',
|
||||||
`type` VARCHAR(20) NOT NULL DEFAULT 'che_중립',
|
`type` VARCHAR(20) NOT NULL DEFAULT 'che_중립',
|
||||||
`aux` LONGTEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`aux`)),
|
`aux` LONGTEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`nation`)
|
PRIMARY KEY (`nation`),
|
||||||
)
|
CONSTRAINT `json1` CHECK (json_valid(`spy`)),
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
CONSTRAINT `json2` CHECK (json_valid(`aux`))
|
||||||
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
CREATE TABLE `nation_turn` (
|
CREATE TABLE `nation_turn` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`nation_id` INT(11) NOT NULL,
|
`nation_id` INT(11) NOT NULL,
|
||||||
`officer_level` INT(4) NOT NULL,
|
`officer_level` INT(4) NOT NULL,
|
||||||
`turn_idx` INT(4) NOT NULL,
|
`turn_idx` INT(4) NOT NULL,
|
||||||
`action` VARCHAR(16) NOT NULL,
|
`action` VARCHAR(16) NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
`arg` TEXT NULL DEFAULT NULL CHECK (json_valid(`arg`)),
|
`arg` TEXT NULL DEFAULT NULL COLLATE 'utf8mb4_bin',
|
||||||
`brief` TEXT NULL DEFAULT NULL,
|
`brief` TEXT NULL DEFAULT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `nation` (`nation_id`, `officer_level`, `turn_idx`),
|
UNIQUE INDEX `nation` (`nation_id`, `officer_level`, `turn_idx`),
|
||||||
INDEX `action` (`action`, `turn_idx`, `nation_id`, `officer_level`)
|
INDEX `action` (
|
||||||
)
|
`action`,
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
`turn_idx`,
|
||||||
|
`nation_id`,
|
||||||
|
`officer_level`
|
||||||
|
),
|
||||||
|
CONSTRAINT `json` CHECK (json_valid(`arg`))
|
||||||
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
## 회의실
|
## 회의실
|
||||||
|
##############################
|
||||||
CREATE TABLE `board` (
|
CREATE TABLE `board` (
|
||||||
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`nation_no` INT(11) NOT NULL,
|
`nation_no` INT(11) NOT NULL,
|
||||||
@@ -168,9 +168,7 @@ CREATE TABLE `board` (
|
|||||||
`text` TEXT NOT NULL,
|
`text` TEXT NOT NULL,
|
||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
INDEX `nation_no` (`nation_no`, `is_secret`, `date`)
|
INDEX `nation_no` (`nation_no`, `is_secret`, `date`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
CREATE TABLE `comment` (
|
CREATE TABLE `comment` (
|
||||||
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`nation_no` INT(11) NOT NULL,
|
`nation_no` INT(11) NOT NULL,
|
||||||
@@ -183,12 +181,10 @@ CREATE TABLE `comment` (
|
|||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
INDEX `nation_no` (`nation_no`, `is_secret`, `date`),
|
INDEX `nation_no` (`nation_no`, `is_secret`, `date`),
|
||||||
INDEX `document_no` (`document_no`, `date`)
|
INDEX `document_no` (`document_no`, `date`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
##############################
|
||||||
|
|
||||||
###########################################################################
|
|
||||||
## 도시 테이블
|
## 도시 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
## trade 100 이 표준 시세
|
## trade 100 이 표준 시세
|
||||||
CREATE TABLE `city` (
|
CREATE TABLE `city` (
|
||||||
`city` INT(6) NOT NULL AUTO_INCREMENT,
|
`city` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
@@ -216,26 +212,23 @@ CREATE TABLE `city` (
|
|||||||
`state` INT(2) NOT NULL DEFAULT '0',
|
`state` INT(2) NOT NULL DEFAULT '0',
|
||||||
`region` INT(2) NOT NULL,
|
`region` INT(2) NOT NULL,
|
||||||
`term` INT(1) NOT NULL DEFAULT '0',
|
`term` INT(1) NOT NULL DEFAULT '0',
|
||||||
`conflict` TEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`conflict`)),
|
`conflict` TEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`city`),
|
PRIMARY KEY (`city`),
|
||||||
INDEX `nation` (`nation`)
|
INDEX `nation` (`nation`),
|
||||||
) ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
CONSTRAINT `json` CHECK (json_valid(`conflict`))
|
||||||
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
###########################################################################
|
##############################
|
||||||
## 부대 테이블
|
## 부대 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
|
|
||||||
CREATE TABLE `troop` (
|
CREATE TABLE `troop` (
|
||||||
`troop_leader` INT(6) NOT NULL,
|
`troop_leader` INT(6) NOT NULL,
|
||||||
`nation` INT(6) NOT NULL,
|
`nation` INT(6) NOT NULL,
|
||||||
`name` VARCHAR(50) NOT NULL,
|
`name` VARCHAR(50) NOT NULL,
|
||||||
PRIMARY KEY (`troop_leader`)
|
PRIMARY KEY (`troop_leader`)
|
||||||
) ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
##########################################################################
|
|
||||||
## 락 테이블
|
## 락 테이블
|
||||||
##########################################################################
|
##############################
|
||||||
|
|
||||||
CREATE TABLE `plock` (
|
CREATE TABLE `plock` (
|
||||||
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`type` ENUM('GAME', 'ETC', 'TOURNAMENT') NOT NULL DEFAULT 'GAME',
|
`type` ENUM('GAME', 'ETC', 'TOURNAMENT') NOT NULL DEFAULT 'GAME',
|
||||||
@@ -243,14 +236,10 @@ CREATE TABLE `plock` (
|
|||||||
`locktime` DATETIME(6) NOT NULL,
|
`locktime` DATETIME(6) NOT NULL,
|
||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
UNIQUE INDEX `type` (`type`)
|
UNIQUE INDEX `type` (`type`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
##############################
|
||||||
ENGINE=Aria
|
|
||||||
;
|
|
||||||
|
|
||||||
###########################################################################
|
|
||||||
## 메시지 테이블
|
## 메시지 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
CREATE TABLE `message` (
|
CREATE TABLE `message` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`mailbox` INT(11) NOT NULL COMMENT '9999 == public, >= 9000 national',
|
`mailbox` INT(11) NOT NULL COMMENT '9999 == public, >= 9000 national',
|
||||||
@@ -259,17 +248,14 @@ CREATE TABLE `message` (
|
|||||||
`dest` INT(11) NOT NULL,
|
`dest` INT(11) NOT NULL,
|
||||||
`time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
`time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
`valid_until` DATETIME NOT NULL DEFAULT '9999-12-31 23:59:59',
|
`valid_until` DATETIME NOT NULL DEFAULT '9999-12-31 23:59:59',
|
||||||
`message` TEXT NOT NULL CHECK (json_valid(`message`)),
|
`message` TEXT NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `by_mailbox` (`mailbox`, `type`, `id`)
|
INDEX `by_mailbox` (`mailbox`, `type`, `id`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`message`))
|
||||||
DEFAULT CHARSET=utf8mb4
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
ENGINE=Aria;
|
##############################
|
||||||
|
|
||||||
###########################################################################
|
|
||||||
## 명전 테이블
|
## 명전 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS `hall` (
|
CREATE TABLE IF NOT EXISTS `hall` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`server_id` CHAR(20) NOT NULL,
|
`server_id` CHAR(20) NOT NULL,
|
||||||
@@ -279,20 +265,17 @@ CREATE TABLE IF NOT EXISTS `hall` (
|
|||||||
`type` VARCHAR(20) NOT NULL,
|
`type` VARCHAR(20) NOT NULL,
|
||||||
`value` DOUBLE NOT NULL,
|
`value` DOUBLE NOT NULL,
|
||||||
`owner` INT(11) NULL DEFAULT NULL,
|
`owner` INT(11) NULL DEFAULT NULL,
|
||||||
`aux` LONGTEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`aux`)),
|
`aux` LONGTEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `server_general` (`server_id`, `type`, `general_no`),
|
UNIQUE INDEX `server_general` (`server_id`, `type`, `general_no`),
|
||||||
UNIQUE INDEX `owner` (`owner`, `server_id`, `type`),
|
UNIQUE INDEX `owner` (`owner`, `server_id`, `type`),
|
||||||
INDEX `server_show` (`server_id`, `type`, `value`),
|
INDEX `server_show` (`server_id`, `type`, `value`),
|
||||||
INDEX `scenario` (`season`, `scenario`, `type`, `value`)
|
INDEX `scenario` (`season`, `scenario`, `type`, `value`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`aux`))
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
|
## 게임 정보 테이블(유지)
|
||||||
###########################################################################
|
##############################
|
||||||
## 왕조 테이블
|
|
||||||
###########################################################################
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS `ng_games` (
|
CREATE TABLE IF NOT EXISTS `ng_games` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`server_id` CHAR(20) NOT NULL,
|
`server_id` CHAR(20) NOT NULL,
|
||||||
@@ -302,24 +285,28 @@ CREATE TABLE IF NOT EXISTS `ng_games` (
|
|||||||
`season` INT(11) NOT NULL,
|
`season` INT(11) NOT NULL,
|
||||||
`scenario` INT(11) NOT NULL,
|
`scenario` INT(11) NOT NULL,
|
||||||
`scenario_name` TEXT NOT NULL,
|
`scenario_name` TEXT NOT NULL,
|
||||||
`env` TEXT NOT NULL CHECK (json_valid(`env`)),
|
`env` TEXT NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `server_id` (`server_id`),
|
UNIQUE INDEX `server_id` (`server_id`),
|
||||||
INDEX `date` (`date`)
|
INDEX `date` (`date`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`env`))
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
|
## 멸망한 국가 목록(유지)
|
||||||
|
##############################
|
||||||
CREATE TABLE IF NOT EXISTS `ng_old_nations` (
|
CREATE TABLE IF NOT EXISTS `ng_old_nations` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`server_id` CHAR(20) NOT NULL DEFAULT '0',
|
`server_id` CHAR(20) NOT NULL DEFAULT '0',
|
||||||
`nation` INT(11) NOT NULL DEFAULT '0',
|
`nation` INT(11) NOT NULL DEFAULT '0',
|
||||||
`data` LONGTEXT NOT NULL DEFAULT '{}' CHECK (json_valid(`data`)),
|
`data` LONGTEXT NOT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
`date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `server_id` (`server_id`, `nation`)
|
INDEX `server_id` (`server_id`, `nation`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`data`))
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
|
## 사망한 장수 목록(유지)
|
||||||
|
##############################
|
||||||
CREATE TABLE IF NOT EXISTS `ng_old_generals` (
|
CREATE TABLE IF NOT EXISTS `ng_old_generals` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`server_id` CHAR(20) NOT NULL,
|
`server_id` CHAR(20) NOT NULL,
|
||||||
@@ -328,14 +315,16 @@ CREATE TABLE IF NOT EXISTS `ng_old_generals` (
|
|||||||
`name` VARCHAR(32) NOT NULL,
|
`name` VARCHAR(32) NOT NULL,
|
||||||
`last_yearmonth` INT(11) NOT NULL,
|
`last_yearmonth` INT(11) NOT NULL,
|
||||||
`turntime` DATETIME(6) NOT NULL,
|
`turntime` DATETIME(6) NOT NULL,
|
||||||
`data` MEDIUMTEXT NOT NULL,
|
`data` MEDIUMTEXT NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `by_no` (`server_id`, `general_no`),
|
UNIQUE INDEX `by_no` (`server_id`, `general_no`),
|
||||||
INDEX `by_name` (`server_id`, `name`),
|
INDEX `by_name` (`server_id`, `name`),
|
||||||
INDEX `owner` (`owner`, `server_id`)
|
INDEX `owner` (`owner`, `server_id`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`data`))
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
|
## 왕조 테이블(유지)
|
||||||
|
##############################
|
||||||
CREATE TABLE IF NOT EXISTS `emperior` (
|
CREATE TABLE IF NOT EXISTS `emperior` (
|
||||||
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
`server_id` CHAR(20) NULL DEFAULT '',
|
`server_id` CHAR(20) NULL DEFAULT '',
|
||||||
@@ -377,14 +366,15 @@ CREATE TABLE IF NOT EXISTS `emperior` (
|
|||||||
`tiger` VARCHAR(128) NULL DEFAULT '',
|
`tiger` VARCHAR(128) NULL DEFAULT '',
|
||||||
`eagle` VARCHAR(128) NULL DEFAULT '',
|
`eagle` VARCHAR(128) NULL DEFAULT '',
|
||||||
`gen` TEXT NULL DEFAULT '',
|
`gen` TEXT NULL DEFAULT '',
|
||||||
`history` MEDIUMTEXT NULL DEFAULT '{}' CHECK (json_valid(`aux`)),
|
`history` MEDIUMTEXT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
`aux` MEDIUMTEXT NULL DEFAULT '{}' CHECK (json_valid(`aux`)),
|
`aux` MEDIUMTEXT NULL DEFAULT '{}' COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`no`)
|
PRIMARY KEY (`no`),
|
||||||
) ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
CONSTRAINT `json1` CHECK (json_valid(`history`)),
|
||||||
|
CONSTRAINT `json2` CHECK (json_valid(`aux`))
|
||||||
###########################################################################
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
## 외교 테이블
|
## 외교 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
create table diplomacy (
|
create table diplomacy (
|
||||||
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
`me` INT(6) NOT NULL,
|
`me` INT(6) NOT NULL,
|
||||||
@@ -393,11 +383,12 @@ create table diplomacy (
|
|||||||
`term` INT(6) NULL DEFAULT '0',
|
`term` INT(6) NULL DEFAULT '0',
|
||||||
`dead` INT(8) NULL DEFAULT '0',
|
`dead` INT(8) NULL DEFAULT '0',
|
||||||
`showing` DATETIME NULL DEFAULT NULL,
|
`showing` DATETIME NULL DEFAULT NULL,
|
||||||
|
|
||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
UNIQUE INDEX `me` (`me`, `you`)
|
UNIQUE INDEX `me` (`me`, `you`)
|
||||||
) ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
|
## 외교문서 테이블
|
||||||
|
##############################
|
||||||
CREATE TABLE `ng_diplomacy` (
|
CREATE TABLE `ng_diplomacy` (
|
||||||
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
`no` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`src_nation_id` INT(11) NOT NULL,
|
`src_nation_id` INT(11) NOT NULL,
|
||||||
@@ -409,16 +400,25 @@ CREATE TABLE `ng_diplomacy` (
|
|||||||
`date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
`date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
`src_signer` INT(11) NOT NULL,
|
`src_signer` INT(11) NOT NULL,
|
||||||
`dest_signer` INT(11) NULL DEFAULT NULL,
|
`dest_signer` INT(11) NULL DEFAULT NULL,
|
||||||
`aux` TEXT NULL DEFAULT NULL CHECK (json_valid(`aux`)),
|
`aux` TEXT NULL DEFAULT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
INDEX `by_nation_src` (`src_nation_id`, `dest_nation_id`, `state`, `date`),
|
INDEX `by_nation_src` (
|
||||||
INDEX `by_nation_dest` (`dest_nation_id`, `src_nation_id`, `state`, `date`)
|
`src_nation_id`,
|
||||||
)
|
`dest_nation_id`,
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
`state`,
|
||||||
|
`date`
|
||||||
###########################################################################
|
),
|
||||||
|
INDEX `by_nation_dest` (
|
||||||
|
`dest_nation_id`,
|
||||||
|
`src_nation_id`,
|
||||||
|
`state`,
|
||||||
|
`date`
|
||||||
|
),
|
||||||
|
CONSTRAINT `json` CHECK (json_valid(`aux`))
|
||||||
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
## 토너먼트 테이블
|
## 토너먼트 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
CREATE TABLE `tournament` (
|
CREATE TABLE `tournament` (
|
||||||
`seq` INT(6) NOT NULL AUTO_INCREMENT,
|
`seq` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
`no` INT(6) NULL DEFAULT 0,
|
`no` INT(6) NULL DEFAULT 0,
|
||||||
@@ -440,32 +440,27 @@ CREATE TABLE `tournament` (
|
|||||||
`prmt` INT(1) NULL DEFAULT 0,
|
`prmt` INT(1) NULL DEFAULT 0,
|
||||||
PRIMARY KEY (`seq`),
|
PRIMARY KEY (`seq`),
|
||||||
INDEX `grp` (`grp`, `grp_no`)
|
INDEX `grp` (`grp`, `grp_no`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
COLLATE='utf8mb4_general_ci'
|
##############################
|
||||||
ENGINE=Aria;
|
|
||||||
|
|
||||||
###########################################################################
|
|
||||||
## 거래 테이블
|
## 거래 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
create table auction (
|
create table `auction` (
|
||||||
no int(6) not null auto_increment,
|
`no` int(6) not null auto_increment,
|
||||||
type int(6) default 0,
|
`type` int(6) default 0,
|
||||||
no1 int(6) default 0,
|
`no1` int(6) default 0,
|
||||||
name1 varchar(64) default '-',
|
`name1` varchar(64) default '-',
|
||||||
amount int(6) default 0,
|
`amount` int(6) default 0,
|
||||||
cost int(6) default 0,
|
`cost` int(6) default 0,
|
||||||
value int(6) default 0,
|
`value` int(6) default 0,
|
||||||
topv int(6) default 0,
|
`topv` int(6) default 0,
|
||||||
no2 int(6) default 0,
|
`no2` int(6) default 0,
|
||||||
name2 varchar(64) default '-',
|
`name2` varchar(64) default '-',
|
||||||
expire datetime,
|
`expire` datetime,
|
||||||
|
PRIMARY KEY (`no`)
|
||||||
PRIMARY KEY (no)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
) ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
##############################
|
||||||
|
|
||||||
###########################################################################
|
|
||||||
## 통계 테이블
|
## 통계 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
CREATE TABLE `statistic` (
|
CREATE TABLE `statistic` (
|
||||||
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
`year` INT(4) NULL DEFAULT '0',
|
`year` INT(4) NULL DEFAULT '0',
|
||||||
@@ -479,48 +474,46 @@ CREATE TABLE `statistic` (
|
|||||||
`power_hist` TEXT NULL DEFAULT '',
|
`power_hist` TEXT NULL DEFAULT '',
|
||||||
`crewtype` TEXT NULL DEFAULT '',
|
`crewtype` TEXT NULL DEFAULT '',
|
||||||
`etc` TEXT NULL DEFAULT '',
|
`etc` TEXT NULL DEFAULT '',
|
||||||
`aux` TEXT NULL DEFAULT NULL CHECK (json_valid(`aux`)),
|
`aux` TEXT NULL DEFAULT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`no`)
|
PRIMARY KEY (`no`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`aux`))
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
###########################################################################
|
|
||||||
## 연감 테이블
|
## 연감 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
CREATE TABLE IF NOT EXISTS `ng_history` (
|
CREATE TABLE IF NOT EXISTS `ng_history` (
|
||||||
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
`no` INT(6) NOT NULL AUTO_INCREMENT,
|
||||||
`server_id` CHAR(20) NOT NULL,
|
`server_id` CHAR(20) NOT NULL,
|
||||||
`year` INT(4) NULL,
|
`year` INT(4) NULL,
|
||||||
`month` INT(2) NULL,
|
`month` INT(2) NULL,
|
||||||
`map` MEDIUMTEXT NULL DEFAULT NULL CHECK (json_valid(`map`)),
|
`map` MEDIUMTEXT NULL DEFAULT NULL,
|
||||||
`global_history` MEDIUMTEXT NULL DEFAULT NULL CHECK (json_valid(`global_history`)),
|
`global_history` MEDIUMTEXT NULL DEFAULT NULL,
|
||||||
`global_action` MEDIUMTEXT NULL DEFAULT NULL CHECK (json_valid(`global_action`)),
|
`global_action` MEDIUMTEXT NULL DEFAULT NULL,
|
||||||
`nations` MEDIUMTEXT NULL DEFAULT NULL CHECK (json_valid(`nations`)),
|
`nations` MEDIUMTEXT NULL DEFAULT NULL,
|
||||||
PRIMARY KEY (`no`),
|
PRIMARY KEY (`no`),
|
||||||
INDEX `server_id` (`server_id`, `year`, `month`)
|
INDEX `server_id` (`server_id`, `year`, `month`),
|
||||||
)
|
CONSTRAINT `json1` CHECK (json_valid(`map`)),
|
||||||
ENGINE=Aria DEFAULT CHARSET=utf8mb4;
|
CONSTRAINT `json2` CHECK (json_valid(`global_history`)),
|
||||||
|
CONSTRAINT `json3` CHECK (json_valid(`global_action`)),
|
||||||
###########################################################################
|
CONSTRAINT `json4` CHECK (json_valid(`nations`))
|
||||||
|
) COLLATE = 'utf8mb4_bin' ENGINE = Aria;
|
||||||
|
##############################
|
||||||
## 이벤트 핸들러 테이블
|
## 이벤트 핸들러 테이블
|
||||||
###########################################################################
|
##############################
|
||||||
|
|
||||||
CREATE TABLE `event` (
|
CREATE TABLE `event` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`target` ENUM('MONTH', 'OCCUPY_CITY', 'DESTROY_NATION') NOT NULL DEFAULT 'MONTH',
|
`target` ENUM('MONTH', 'OCCUPY_CITY', 'DESTROY_NATION') NOT NULL DEFAULT 'MONTH',
|
||||||
`priority` INT(11) NOT NULL DEFAULT '1000',
|
`priority` INT(11) NOT NULL DEFAULT '1000',
|
||||||
`condition` MEDIUMTEXT NOT NULL,
|
`condition` MEDIUMTEXT NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
`action` MEDIUMTEXT NOT NULL,
|
`action` MEDIUMTEXT NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `target` (`target`, `priority`, `id`),
|
INDEX `target` (`target`, `priority`, `id`),
|
||||||
CONSTRAINT `condition` CHECK (json_valid(`condition`)),
|
CONSTRAINT `json1` CHECK (json_valid(`condition`)),
|
||||||
CONSTRAINT `action` CHECK (json_valid(`action`))
|
CONSTRAINT `json2` CHECK (json_valid(`action`))
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
##############################
|
||||||
ENGINE=Aria;
|
|
||||||
|
|
||||||
|
|
||||||
## 전체 이벤트 기록 테이블
|
## 전체 이벤트 기록 테이블
|
||||||
|
##############################
|
||||||
CREATE TABLE `world_history` (
|
CREATE TABLE `world_history` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`nation_id` INT(11) NOT NULL,
|
`nation_id` INT(11) NOT NULL,
|
||||||
@@ -530,12 +523,10 @@ CREATE TABLE `world_history` (
|
|||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `date` (`nation_id`, `year`, `month`, `id`),
|
INDEX `date` (`nation_id`, `year`, `month`, `id`),
|
||||||
INDEX `plain` (`nation_id`, `id`)
|
INDEX `plain` (`nation_id`, `id`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
############################
|
||||||
ENGINE=Aria
|
|
||||||
;
|
|
||||||
|
|
||||||
## 장수 동향 테이블
|
## 장수 동향 테이블
|
||||||
|
##############################
|
||||||
CREATE TABLE `general_record` (
|
CREATE TABLE `general_record` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`general_id` INT(11) NOT NULL,
|
`general_id` INT(11) NOT NULL,
|
||||||
@@ -546,41 +537,36 @@ CREATE TABLE `general_record` (
|
|||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `date` (`general_id`, `log_type`, `year`, `month`, `id`),
|
INDEX `date` (`general_id`, `log_type`, `year`, `month`, `id`),
|
||||||
INDEX `plain` (`general_id`, `log_type`, `id`)
|
INDEX `plain` (`general_id`, `log_type`, `id`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
##############################
|
||||||
ENGINE=Aria
|
## 예약 오픈 테이블
|
||||||
;
|
##############################
|
||||||
|
|
||||||
######
|
|
||||||
# 예약 오픈 테이블
|
|
||||||
CREATE TABLE IF NOT EXISTS `reserved_open` (
|
CREATE TABLE IF NOT EXISTS `reserved_open` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`options` TEXT NULL DEFAULT NULL CHECK (json_valid(`options`)),
|
`options` TEXT NULL DEFAULT NULL COLLATE 'utf8mb4_bin',
|
||||||
`date` DATETIME NULL DEFAULT NULL,
|
`date` DATETIME NULL DEFAULT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `date` (`date`)
|
INDEX `date` (`date`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`options`))
|
||||||
DEFAULT CHARSET=utf8mb4
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
ENGINE=Aria;
|
##############################
|
||||||
|
## 장수 선택 토큰
|
||||||
######
|
##############################
|
||||||
# 장수 선택 토큰
|
|
||||||
CREATE TABLE `select_npc_token` (
|
CREATE TABLE `select_npc_token` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`owner` INT(11) NOT NULL,
|
`owner` INT(11) NOT NULL,
|
||||||
`valid_until` DATETIME NOT NULL,
|
`valid_until` DATETIME NOT NULL,
|
||||||
`pick_more_from` DATETIME NOT NULL,
|
`pick_more_from` DATETIME NOT NULL,
|
||||||
`pick_result` TEXT NOT NULL CHECK (json_valid(`pick_result`)),
|
`pick_result` TEXT NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
`nonce` INT(11) NOT NULL,
|
`nonce` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `owner` (`owner`),
|
UNIQUE INDEX `owner` (`owner`),
|
||||||
INDEX `valid_until` (`valid_until`)
|
INDEX `valid_until` (`valid_until`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`pick_result`))
|
||||||
DEFAULT CHARSET=utf8mb4
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
ENGINE=Aria;
|
##############################
|
||||||
|
## 장수 생성 풀 토큰
|
||||||
######
|
##############################
|
||||||
# 장수 생성 풀 토큰
|
|
||||||
CREATE TABLE `select_pool` (
|
CREATE TABLE `select_pool` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`unique_name` VARCHAR(20) NOT NULL,
|
`unique_name` VARCHAR(20) NOT NULL,
|
||||||
@@ -593,36 +579,32 @@ CREATE TABLE `select_pool` (
|
|||||||
UNIQUE INDEX `general_id` (`general_id`),
|
UNIQUE INDEX `general_id` (`general_id`),
|
||||||
INDEX `owner` (`owner`),
|
INDEX `owner` (`owner`),
|
||||||
INDEX `reserved_until` (`reserved_until`, `general_id`)
|
INDEX `reserved_until` (`reserved_until`, `general_id`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
COLLATE='utf8mb4_general_ci'
|
##############################
|
||||||
ENGINE=Aria
|
## KV storage
|
||||||
;
|
##############################
|
||||||
|
|
||||||
###################
|
|
||||||
# KV storage
|
|
||||||
###################
|
|
||||||
CREATE TABLE IF NOT EXISTS `storage` (
|
CREATE TABLE IF NOT EXISTS `storage` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`namespace` VARCHAR(40) NOT NULL,
|
`namespace` VARCHAR(40) NOT NULL,
|
||||||
`key` VARCHAR(40) NOT NULL,
|
`key` VARCHAR(40) NOT NULL,
|
||||||
`value` LONGTEXT NOT NULL CHECK (json_valid(`value`)),
|
`value` LONGTEXT NOT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `key` (`namespace`, `key`)
|
UNIQUE INDEX `key` (`namespace`, `key`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`value`))
|
||||||
COLLATE='utf8mb4_general_ci'
|
) COLLATE = 'utf8mb4_bin' ENGINE = Aria;
|
||||||
ENGINE=Aria;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS `nation_env` (
|
CREATE TABLE IF NOT EXISTS `nation_env` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`namespace` INT(11) NOT NULL, #storage와 다름!
|
`namespace` INT(11) NOT NULL,
|
||||||
|
##storage와 다름!
|
||||||
`key` VARCHAR(40) NOT NULL,
|
`key` VARCHAR(40) NOT NULL,
|
||||||
`value` LONGTEXT NOT NULL CHECK (json_valid(`value`)),
|
`value` LONGTEXT NOT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `key` (`namespace`, `key`)
|
UNIQUE INDEX `key` (`namespace`, `key`),
|
||||||
)
|
CONSTRAINT `json` CHECK (json_valid(`value`))
|
||||||
COLLATE='utf8mb4_general_ci'
|
) COLLATE = 'utf8mb4_bin' ENGINE = Aria;
|
||||||
ENGINE=Aria;
|
##############################
|
||||||
|
## 베팅
|
||||||
|
##############################
|
||||||
CREATE TABLE IF NOT EXISTS `betting` (
|
CREATE TABLE IF NOT EXISTS `betting` (
|
||||||
`general_id` INT(11) NOT NULL,
|
`general_id` INT(11) NOT NULL,
|
||||||
`bet0` INT(11) NOT NULL DEFAULT 0,
|
`bet0` INT(11) NOT NULL DEFAULT 0,
|
||||||
@@ -642,9 +624,10 @@ CREATE TABLE IF NOT EXISTS `betting` (
|
|||||||
`bet14` INT(11) NOT NULL DEFAULT 0,
|
`bet14` INT(11) NOT NULL DEFAULT 0,
|
||||||
`bet15` INT(11) NOT NULL DEFAULT 0,
|
`bet15` INT(11) NOT NULL DEFAULT 0,
|
||||||
PRIMARY KEY (`general_id`)
|
PRIMARY KEY (`general_id`)
|
||||||
)
|
) ENGINE = Aria;
|
||||||
ENGINE=Aria;
|
##############################
|
||||||
|
## 명장일람
|
||||||
|
##############################
|
||||||
CREATE TABLE `rank_data` (
|
CREATE TABLE `rank_data` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`nation_id` INT(11) NOT NULL DEFAULT 0,
|
`nation_id` INT(11) NOT NULL DEFAULT 0,
|
||||||
@@ -655,11 +638,10 @@ CREATE TABLE `rank_data` (
|
|||||||
UNIQUE INDEX `by_general` (`general_id`, `type`),
|
UNIQUE INDEX `by_general` (`general_id`, `type`),
|
||||||
INDEX `by_type` (`type`, `value`),
|
INDEX `by_type` (`type`, `value`),
|
||||||
INDEX `by_nation` (`nation_id`, `type`, `value`)
|
INDEX `by_nation` (`nation_id`, `type`, `value`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
COLLATE='utf8mb4_general_ci'
|
##############################
|
||||||
ENGINE=Aria
|
## 유저 전용 로그
|
||||||
;
|
##############################
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS `user_record` (
|
CREATE TABLE IF NOT EXISTS `user_record` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`user_id` INT(11) NOT NULL,
|
`user_id` INT(11) NOT NULL,
|
||||||
@@ -670,29 +652,32 @@ CREATE TABLE IF NOT EXISTS `user_record` (
|
|||||||
`date` DATETIME NULL DEFAULT NULL,
|
`date` DATETIME NULL DEFAULT NULL,
|
||||||
`text` TEXT NOT NULL,
|
`text` TEXT NOT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
INDEX `date1` (`user_id`, `server_id`, `log_type`, `year`, `month`, `id`),
|
INDEX `date1` (
|
||||||
|
`user_id`,
|
||||||
|
`server_id`,
|
||||||
|
`log_type`,
|
||||||
|
`year`,
|
||||||
|
`month`,
|
||||||
|
`id`
|
||||||
|
),
|
||||||
INDEX `date2` (`user_id`, `server_id`, `log_type`, `date`, `id`),
|
INDEX `date2` (`user_id`, `server_id`, `log_type`, `date`, `id`),
|
||||||
INDEX `date3` (`server_id`, `date`),
|
INDEX `date3` (`server_id`, `date`),
|
||||||
INDEX `date4` (`server_id`, `year`, `month`, `date`),
|
INDEX `date4` (`server_id`, `year`, `month`, `date`),
|
||||||
INDEX `plain` (`user_id`, `log_type`, `id`)
|
INDEX `plain` (`user_id`, `log_type`, `id`)
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
##############################
|
||||||
ENGINE=Aria
|
## 신규 베팅
|
||||||
;
|
##############################
|
||||||
|
|
||||||
CREATE TABLE `ng_betting` (
|
CREATE TABLE `ng_betting` (
|
||||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||||
`betting_id` INT(11) NOT NULL,
|
`betting_id` INT(11) NOT NULL,
|
||||||
`general_id` INT(11) NOT NULL,
|
`general_id` INT(11) NOT NULL,
|
||||||
`user_id` INT(11) NULL DEFAULT NULL,
|
`user_id` INT(11) NULL DEFAULT NULL,
|
||||||
`betting_type` VARCHAR(100) NOT NULL COMMENT 'JSON',
|
`betting_type` VARCHAR(100) NOT NULL COLLATE 'utf8mb4_bin',
|
||||||
`amount` INT(11) NOT NULL,
|
`amount` INT(11) NOT NULL,
|
||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE INDEX `by_general` (`general_id`, `betting_id`, `betting_type`),
|
UNIQUE INDEX `by_general` (`general_id`, `betting_id`, `betting_type`),
|
||||||
UNIQUE INDEX `by_bet` (`betting_id`, `betting_type`, `general_id`),
|
UNIQUE INDEX `by_bet` (`betting_id`, `betting_type`, `general_id`),
|
||||||
INDEX `by_user` (`user_id`, `betting_id`, `betting_type`),
|
INDEX `by_user` (`user_id`, `betting_id`, `betting_type`),
|
||||||
CONSTRAINT `type_json` CHECK (json_valid(`betting_type`))
|
CONSTRAINT `json` CHECK (json_valid(`betting_type`))
|
||||||
)
|
) COLLATE = 'utf8mb4_general_ci' ENGINE = Aria;
|
||||||
DEFAULT CHARSET=utf8mb4
|
|
||||||
ENGINE=Aria
|
|
||||||
;
|
|
||||||
Reference in New Issue
Block a user