개발:패치_내역

패치 내역

패치 내역을 요약합니다.

실제 코드의 변경 내역은 https://storage.hided.net/gitea/devsam/core/commits/devel 에서 확인할 수 있습니다.

커밋

(v0.37.0-0-gf1e6ac7b-devel )

(v0.37.0-0-gf1e6ac7b-devel )

주요 변경점

엔진 변경점

밸런스 수정

수정된 버그

기타 변경점

(v0.37.0)

(2024-02-29) 커밋목록

주요 변경점

  1. 소소하게 이것저것 바뀌었습니다.

엔진 변경점

  1. 패널티 시스템이 정비됩니다.
    1. 현재 구현된 패널티는 다음과 같습니다.
      1. 수뇌 불가
      2. 외교권자 불가
      3. 기밀 조회(암행부 등) 불가
      4. 개인 메시지 전송 제한
    2. 깃수 단위로 패널티가 적용됩니다.
      1. 깃수 내 패널티인 경우: 장수를 삭제하면 패널티가 해제됩니다.
      2. 깃수 외 패널티인 경우: 장수를 삭제하더라도, 장수 생성/장수 빙의시 패널티가 다시 적용됩니다.
  2. 도시 함락 시 수비중인 장수에게 동작하는 ConqueryCity 트리거를 추가합니다.
  3. 유니크 아이템 획득 시드에 커맨드 명을 추가합니다.

밸런스 수정

  1. '자동 출병'이 설정된 게임에서, 국고 병량이 2000 이하이더라도 유저장은 출병하도록 변경합니다.
  2. 초기 3년 이전에도 하야를 할 수 있도록 변경합니다.
  3. 장수 생성 시 턴 시간 지정을 초 단위가 아니라 분단위까지만 지정할 수 있도록 변경합니다.
    1. 정확히는 1/60 단위로만 지정가능한 구현이므로, 1분 서버에서는 1초단위, 2분 서버에서는 2초 단위입니다.
    2. 요구 유산 포인트를 3000에서 2500으로 할인합니다.
  4. 장수 생성 시 턴 시간과 도시 지정을 같이 할 수 있도록 변경합니다.
  5. 음양가의 전략턴 디메리트를 2배에서 4/3배로 완화합니다.

수정된 버그

  1. v0.35 기준
    1. 이민족 발동 시 현재 수도가 예전 이성 도시인 경우에 발동하지 않는 버그를 수정합니다.
  2. v0.33 기준
    1. 저격 아이템, 저격 특기의 효과가 동시에 2회 발동할 수 있는 문제를 수정합니다.
  3. v0.31 기준
    1. 사전 거병에서 유니크 아이템을 얻는 경우, 직후 일반턴에서 높은 확률로 또 유니크 아이템을 얻게 되는 문제를 보완합니다.
  4. v0.30 기준
    1. 인사부 확장에서 '종사'가 제대로 표기되지 않는 버그를 수정합니다.
  5. v0.29 기준
    1. 턴 선택기에서 턴을 빠르게 여러번 당기거나 미룰 때, 화면이 더 이상 뜨지 않는 버그를 수정합니다.
  6. v0.20 기준
    1. 불가침 제의를 같은 국가로 지정할 수 있는 버그를 수정합니다.
  7. 기타
    1. 정체모를 JSON 클래스를 Json 클래스로 올바르게 고칩니다.
      1. 왜 어떤 곳에서는 버그가 나고, 어떤 곳에서는 동작했던 걸까요?

기타 변경점

  1. 아시아 명장전 시나리오에서 (비급+파죽지세) 모드를 추가합니다.
  2. 걸그룹대전 시나리오에서 (비급) 모드를 추가합니다.
  3. 일부 게임 텍스트를 수정합니다.
  4. 개인 기록에 전략 수행 내역과 백성동원 대상 도시가 남습니다.
  5. 종전 시 세력 정보란에 문구가 남습니다.
  6. 이호경식 사용시 대상 국가를 남깁니다.
  7. 유산을 사용한 턴 시간 변경을 직관적인 동작으로 재 설계합니다.
    1. 다다음턴 부터 시간을 00:00 ~ 59:59까지 랜덤하게 바꿉니다.
    2. 이전에는 연속으로 20~30분 뒤로 밀리는 경우 중간 턴이 하나 사라지는 문제가 있었습니다.
  8. 사전 거병 시 삭턴이 리셋됩니다.
  9. NPC가 거병한 경우 건국까지 한턴을 기다립니다.
    1. NPC 시나리오에서 유저장이 안전하게 건국할 수 있습니다.
  10. 유니크 경매 항목 변경 시, 금액이 자동으로 입찰가능한 최저치로 바뀌도록 변경합니다.
  11. 국가 성향별 보정에서 “내정” 용어를 “농상”으로 변경합니다.
  12. 물자조달 커맨드를 내정에서 국가로 이동합니다.

(2023-08-13) 커밋목록

주요 변경점

  1. v0.36.0으로 발생한 치명적인 버그들의 수정 및 조정이 있습니다.
  2. 체 60기를 위한 파죽지세 시나리오 관련 기능이 추가됩니다.
    1. 상세정보는 https://sam.hided.net/xe/community/35040?category=290 를 참고해주세요.

엔진 변경점

  1. General 클래스를 General, GeneralLite 클래스로 분리합니다.
    1. GeneralLite 클래스는 iAction을 요구하지 않습니다.
  2. scenarioEffect 개념이 추가됩니다.
    1. 시나리오마다 다른 내정/전투 특성이 반영될 수 있습니다.
  3. InstanceAction 개념이 추가됩니다.
  4. NotOccupiedCity constraint를 추가합니다.

밸런스 수정

수정된 버그

  1. v0.36 기준
    1. 정상동작하지 않았던 많은 기능들을 복구합니다.
  2. v0.35 기준
    1. 천통 후 이민족 이벤트에서 유산 포인트를 얻을 수 있는 문제를 수정합니다.
  3. v0.33 기준
    1. 수극이 다른 저격과 다르게 처리되던 문제를 수정합니다.
  4. v0.20 기준
    1. 징병 가능 여부 판별 시 상대 년도 판별 로직에 문제가 있던 부분을 수정합니다.
    2. 트래픽에서 접속자가 제대로 집계되지 않는 문제를 수정합니다.

기타 변경점

  1. 파죽지세 시나리오가 추가되었습니다.

(2023-07-12) 커밋목록

주요 변경점

  1. 내부 엔진 코드 조정이 있었습니다.

엔진 변경점

  1. 내부 DB의 일부 인덱스를 수정합니다.
  2. 기존 `General` 테이블에서 접속 로그 관련 정보를 `GeneralAccessLog` 테이블로 분리합니다.
    1. 최근 갱신, 갱신 횟수(벌점) 정보입니다.
  3. 기존의 접속 로그 방식을 `api_log`로 일원화합니다.
  4. General 객체를 DB에서 받아오는 방법을 재작성합니다.
    1. `GeneralQueryMode` Enum을 통해 Core, Lite, FullWithIaction, Full, FullWithAccessLog 5가지 중 하나로 생성할 수 있게됩니다.

밸런스 수정

  1. 국력 계산식에서 평균 '벌점'을 제거합니다.

수정된 버그

  1. 기타
    1. 최신 삼성 브라우저에서 drag를 이용한 도구가 제대로 동작하지 않는 문제를 해결합니다.
    2. 화면 가로 크기를 조절 할 때, 깨지는 특정 가로 크기 범위가 있던 문제를 해결합니다.

기타 변경점

  1. 등용장 수락은 재야상태에서만 가능하도록 변경합니다.
  2. 내부 코드의 기본 탭 단위 설정을 2에서 4 바꿉니다.
  3. 일부 메시지 출력의 오타를 수정합니다.

(2023-06-25) 커밋목록

주요 변경점

  1. 천하통일 후 천통국 군주와 천통국 참모에게 이민족 침입 이벤트를 호출할 수 있도록 하는 기능이 추가됩니다.
    1. 난이도는 3단계입니다.
      1. 어려움: NPC 수 2배, 종합 능력치 195, 기술등급 최대, 숙련도 대등
      2. 보통: NPC 수 2배, 종합 능력치 동일, 기술등급 대등, 숙련도 0.5배
      3. 쉬움: NPC 수 1배, 종합 능력치 0.5배, 기술등급 80%, 숙련도 0
    2. 이민족이 추가될 때 속도 문제로 1분, 2분 서버 등에서는 턴 단위 시간이 자동으로 느려집니다.

엔진 변경점

  1. 공지용 개인 메시지를 전송하는 내부기능을 추가합니다.
  2. 일반 유저가 허가된 특정 이벤트를 직접 호출하는 기능을 추가합니다.
    1. 현재는 천하통일 후 이민족 호출만 가능합니다.
  3. 서버 변수용 `ServerEnv` 클래스를 추가합니다.
    1. `ServerDefaultEnv`로 기본값이 제어됩니다.
  4. 서버 턴 단위 시간을 변경하는 기능이 새로 작성되었습니다.
    1. 아직 API화되지는 않습니다.

밸런스 수정

  1. 버그로 인한 유발된 밸런스 조정이 있습니다.
    1. 병가
    2. 진, 관, 수 전투

수정된 버그

  1. v0.35 기준
    1. 전투시 수비자에게 수비 도시 정보가 입력되지 않는 버그를 수정했습니다.
      1. 진, 관, 수 정보가 제대로 반영되지 않았습니다.
    2. 정란/벽력의 성벽 선제가 정상적으로 점유율에 반영되지 않는 버그를 수정했습니다.
    3. 깃수가 초기화 되었을 때, 메시지 알림이 일어나지 않는 버그를 수정했습니다.
  2. v0.34 기준
    1. 거울세계 시나리오에서 국가 규모 승급이 일어나지 않던 버그를 수정했습니다.
  3. v0.30 기준
    1. 은퇴 전/후에 베팅 포인트가 걸린 경우, 유산 포인트가 뻥튀기 되는 버그를 수정했습니다.
  4. v0.23 기준
    1. 병가의 세율과 무관하게 인구 증감이 아예 없는 버그를 수정했습니다.
  5. v0.20 기준
    1. 구형 관리자 도구의 일부 버그를 수정합니다.

기타 변경점

  1. 애니집결 시나리오가 업데이트되었습니다.

(2023-05-12) 커밋목록

주요 변경점

  1. 게임 밸런스를 대폭 수정했습니다.
  2. 변경한 정란, 벽력거의 선제 공격 로직을 대응하기 위해 전투 엔진을 대폭 변경했습니다.

엔진 변경점

  1. 전투 순위 계산식에 '장수'가 아닌 '도시'가 들어갈 수 있도록 확장했습니다.
  2. 도시가 특수 능력을 사용할 수 있도록 변경합니다.
    1. 현재는 정란, 벽력거의 특수 선제에만 반응합니다.
  3. 병종이 실제로 수치 보정에 사용되는 iAction들을 가질 수 있도록 개선합니다.
  4. 전역 KVStorage에 general_{$generalID} namespace를 추가했습니다.
  5. 다음 API를 추가/변경합니다.
    1. Message/ReadLatestMessage - 메시지 읽음 처리
    2. Message/GetRecentMessage - 메시지 읽음 처리를 반영한 최근 메시지 정보 수

밸런스 수정

  1. 레벨(명성), 능력치의 최대 상한을 255로 지정합니다.
    1. 300에 가까워지면 내부의 전투력 수식에 문제가 생겨 대미지가 1 이하로 들어가는 문제가 있었습니다.
    2. 순수 능력치 뿐만 아니라, 보정된 능력치까지 포함하여 255에 대한 제한입니다.
  2. 전쟁 중에 전방 도시의 내정 효율이 “수도를 제외하고” 감소하였으나, “수도여도” 감소하도록 변경합니다.
    1. 전방 도시에서 적게 오르는 내정은 농지 개간(50%), 수비 강화(50%), 성벽 보수(25%), 상업 투자(50%), 물자조달(50%, 신설) 입니다.
    2. 단, 185년까지는 전방이더라도 감소하지 않습니다.
    3. 이후 1년마다 실제 적용량 대비 5%씩 가산 적용되어, 205년이 되면 수도여도 다른 도시와 차이가 없어집니다.
    4. 물자조달도 적게 오르도록 변경합니다.
  3. 차병군을 대폭 수정합니다.
    1. 정란, 벽력거의 첫 선제 공격은 무조건 성벽을 공격하도록 변경합니다.
      1. 병량 패퇴, 점령은 적용되지 않습니다.
      2. 다른 수비병이 있는 경우에는 예외적으로 성벽도 같이 맞 선제 공격을 시도합니다.
    2. 벽력거는 추가로 다음과 같이 변경됩니다.
      1. 받는 피해가 44% 증가합니다.
        1. 정란의 상성과 같아집니다.
    3. 목우는 다음과 같이 변경됩니다.
      1. 주는 피해가 20% 감소합니다.
        1. 저지시 숙련도 역시 주는 피해에 기반하므로, 같이 줄어듭니다.
      2. 저지시 쌀을 소모하도록 변경합니다.
        1. 일반 공격 대비 0.9(저지 계수) * 0.25배만큼의 쌀 소모를 합니다.

수정된 버그

  1. v0.34 기준
    1. 부대장 생성이 국가 승급한 뒤 한달 뒤에 제공되는 문제를 수정합니다.
      1. 국가 승급도 변경가능한 Event로 옮깁니다.
    2. 이미 읽은 메시지임에도 불구하고, 다른 기기에선 읽지 않은 것으로 뜨는 문제를 수정합니다.
    3. 메인 페이지에서 토너먼트 진행 상태가 제대로 표기되지 않는 버그를 수정합니다.
    4. 지도 연월에 마우스를 올렸을 때, 기술 등급 제한등의 툴팁이 나타나지 않는 버그를 수정합니다.
  2. v0.32 기준
    1. 특정 경우에 감찰부의 내용이 보이지 않는 버그를 수정합니다.
  3. v0.29 기준
    1. 능력치와 같은 숫자에 대해서 숫자에 대한 대소비교가 아닌 '문자열 필터'가 적용되던 문제를 수정합니다.
  4. v0.20 기준
    1. 모든 내정특기/전투특기를 사용 후, 초기화할 경우 서버가 정지하는 문제를 수정합니다.
    2. 명성 최대 레벨이 지정되지 않아 300레벨이 넘으면 전투 로직이 망가지는 문제를 수정합니다.
      1. 자세한 내용은 밸런스 수정란을 확인해주세요.
  5. v0.9 기준
    1. 카카오 로그인 시, 특정 경우에 인증코드 전송기능이 먹통이 되는 문제를 수정합니다.
      1. 내부 카카오 로그인 토큰 갱신 시간이, 인증코드 전송기간과 겹치는 희귀한 경우에 발생합니다.

기타 변경점

(2023-03-22) 커밋목록

주요 변경점

  1. 메인 페이지를 새로 구현했습니다.
    1. 거의 비슷하게 생겼으나, Vue3로 새로 구현하였습니다.
    2. 갱신 버튼이 페이지 새로 고침이 아닌, 내부 데이터 수정 방식으로 동작합니다.
      1. 이에 따라 갱신 버튼 클릭시 화면 번쩍임이 사라집니다.
    3. 새 메시지와 설문조사가 왔을 때 알려주는 로직을 새로 구현합니다.
  2. 시나리오마다 게임 룰을 조금 더 유연하게 바꿀 수 있도록 개선합니다. 다음은 켜고/끄거나, 다르게 설정할 수 있는 게임 룰 목록입니다.
    1. 보급선 설정, 단기 수입, 부대장 부여
    2. 도시 인구 변화, 금 수입, 쌀 수입
    3. 관직 제한 초기화, 상인 등장, 특기 부여
    4. 재난, 풍작 등
  3. 체 55기 이벤트 깃수를 위해 거울 세계 시나리오를 구현합니다.
    1. 새로 추가한 CR지도입니다.
    2. 맹훈련 커맨드를 임시 구현합니다.
      1. 훈련/사기진작 분량의 2/3를 동시에 올려주는 커맨드입니다.
      2. 쌀을 소모합니다.
    3. 인구이동 커맨드를 임시 구현합니다.
      1. 도시의 인구를 일정량 다른 도시로 이동하는 사령턴 커맨드입니다.

엔진 변경점

  1. 내부 세션 관리용 DummySession의 구현이 잘못되어있어, 계속해서 실제 세션을 요구하는 버그를 수정합니다.(v0.21)
  2. 토너먼트 관리 페이지에서 자동 개최 모드 설정을 바꿀 수 없는 버그를 수정합니다.(v0.31)
  3. SammoAPI 호출 시 timeout과 retry가 지정되어있어서 의도와 다르게 동작할 수 있던 버그를 수정했습니다.(v0.26)
  4. 메인 페이지에서 명령어 테이블을 동적으로 불러와, 실행 가능 여부를 판단할 수 있도록 수정합니다.
  5. 기존 코드에서 내부 PHP warning이 발생하던 부분을 수정합니다.
  6. CSS 표기에서 기본적으로 사용하던 12컬럼과 다르게 10컬럼 모드를 추가합니다.
  7. 지도에서 도시 배경 출력 방식을 변경할 수 있도록 수정합니다.
  8. 메시지 통신 API를 재구현합니다.
  9. 외부 호출이 불가능한 API 타입을 정의합니다.
    1. 내부 실험용, 혹은 이전에 허용했으나 앞으로 비활성화하고자 하는 경우에 사용됩니다.
  10. 글로벌 메뉴 출력 방식을 php template 방식에서 Json 수신 후 Vue3로 표시하는 방식으로 변경합니다.
  11. 로그인 문제, API 호출 실패 등에서 대응을 위한 API내 Recovery Mode를 추가합니다.
    1. 인증 코드 입력 필요, 장수 없음(사망) 등에서 페이지 갱신이 필요함에도 이루어지지 않는 경우에 대응하기 위함입니다.
  12. 다음 API를 추가합니다.
    1. Global/GetFrontInfo - 메인 페이지 관련 모든 정보 호출
      1. 다른 API와 중복되는 데이터가 있으나, 벌점 제어 관련 문제가 있어 하나의 API로 통합합니다.
    2. Global/GetGlobalMenu - 글로벌 메뉴 리스트 수신
  13. 다음 DTO를 추가합니다.
    1. MenuItem, MenuMulti, MenuSplit - 메뉴 리스트 수신용
  14. 다음 커맨드 실행 조건을 추가합니다.
    1. NeutralCity - 소재 도시가 공백지여야 함
  15. JS, PHP 패키지를 업데이트했습니다.
    1. 특히 bootstrap-vue-3를 bootstrap-vue-next로 변경하면서 생긴 문제를 수정합니다.

밸런스 수정

  1. 랜덤임관 모드에서 초기 장수 3인 제한을 해제합니다.
    1. 사전 거병이 가능하므로, 시간에 따른 제한이 필요없을것으로 판단합니다.

수정된 버그

  1. v0.30 기준
    1. 새 지도 렌더러가 모바일에서 스크롤로 인한 화면 접촉에도 도시 선택이 되는 문제를 수정합니다.
      1. 이전에는 턴 입력기의 세부 옵션에서 사용되던 지도이며, 새 버전의 메인페이지에 본격적으로 문제가 되었습니다.
  2. v0.29 기준
    1. 국방 수정에서 여러줄 개행이 한줄 개행으로만 표시되는 버그를 수정합니다.
  3. v0.28 기준
    1. 명령 실행 결과를 보여주는 우상단 토스트의 색상이 잘못 설정되어 내용이 알아보기 어렵던 문제를 수정합니다.
  4. v0.25 기준
    1. 게임 시작 6개월 내에 거병이 하나도 없으면 서버가 정지하는 버그를 수정합니다.
      1. NPC 생성 로직과 연관된 문제였습니다.
  5. v0.23 기준
    1. 삼성 브라우저에서 강제 다크모드가 적용될 때 색상이 왜곡되는 문를 수정합니다.

기타 변경점

  1. perl 구현 삼모전과 비슷하게 보이는 지도를 추가합니다. (CR지도)
  2. 메시지창에서 장수 이름, 국가 이름칸을 클릭하여 빠르게 수신 대상을 지정할 수 있도록 하는 기능을 추가합니다.

(2023-02-24) 커밋목록

주요 변경점

  1. 다양한 변경이 일어났습니다.
    1. 세부 변경점을 확인해주세요.

엔진 변경점

  1. 일부 값을 게임 상수에서 조정할 수 있도록 수정합니다.
    1. 게임 상수는 시나리오별로 조정할 수 있습니다.
    2. 유니크 획득 확률을 바꿀 수 있습니다.
    3. 장수 사전 생성 시 재 생성까지 필요한 시간을 바꿀 수 있습니다.
  2. 장수 이름명 풀을 그대로 이용하는 '장수명 무작위 생성'모드가 추가됩니다.
  3. 이벤트 Action으로 '무작위 유니크 망실'을 추가합니다.
  4. 내부 디버깅 로그에서 민감한 값(비밀번호 등)가 남지 않도록 처리하는 기능을 추가합니다.
  5. 유저가 조작하는 모든 값을 SQLite DB에 저장하는 기능을 추가합니다.
    1. 지금은 SammoAPI를 통해서 api.php를 호출하는 경우에만 처리합니다.
    2. j_*.php로 호출되는 규격은 점차 api.php로 이동해나갈 예정입니다.
  6. 다음 Enum값을 추가합니다.
    1. MessageType (메시지 타입)
  7. 다음 API를 추가합니다.
    1. Message/GetContactList - 메시지 연락 리스트
    2. Message/GetRecentMessage - 최근 메시지 수신
    3. Message/GetOldMessage - 이전 메시지 수신
    4. Message/DeleteMessage - 메시지 삭제
    5. Message/DecideMessageResponse - 메시지 응
    6. Message/SendMessage - 메시지 전송
  8. 메시지 관련 기능에 해당하는 j_msg_* 호출들이 위의 API로 변경됩니다.
  9. 선제 사격 트리거를 다른 트리거와 마찬가지로 '시도' 및 '발동'으로 2원화합니다.
  10. 더이상 사용할 수 없게된 `phpuri` 라이브러리를 `league/uri`로 대체합니다.

밸런스 수정

  1. 목우가 보병, 궁병, 기병, 귀병에 대해 25% 더 많은 피해를 입습니다.
  2. 정란, 벽력거가 궁병처럼 선제사격을 합니다.
  3. 벽력거의 초기 공격 값을 200에서 150으로 낮아집니다.
    1. 선제사격이 추가되어 6페이즈 기준 전투는 비슷할 것으로 예상합니다.
  4. 궁기병의 보병 상대 전투력을 상향합니다.
    1. 공격력: 12.5% 향상
    2. 방어력: 9.1% 향상
  5. 선제사격의 대미지를 50%에서 2/3로 상향합니다.
  6. 초토화를 할 경우 치안, 수비, 성벽도 20%로 낮추도록 변경합니다.
    1. 기존에는 이 세가지 값은 그대로 유지되었습니다.
  7. 기병의 수비시 전투력을 일부 상향합니다.
    1. 공격력 약 2.1% 향상
    2. 방어력 약 3.2% 향상
  8. 계략 방어 확률 계산에서 도시 장수 수에 따른 방어 보정을 제곱근에서 로그2 기반으로 변경합니다.

수정된 버그

  1. v0.32 기준
    1. 신규/복귀 유산 포인트 계산시 이벤트 깃수를 포함해서 계산하는 버그를 수정했습니다.
    2. 피장파장이 피장파장을 대상으로 하면 로직에 문제가 발생하여, 피장파장을 대상으로 할 수 없도록 수정했습니다.
  2. v0.31 기준
    1. 천통 후 연감에서 서버시드를 출력할때 누락된 괄호를 추가했습니다.
    2. 이미 같은 부위의 다른 아이템에 입찰하고 있는 경우, 경매가 열리다 마는 버그를 수정했습니다.
  3. v0.30 기준
    1. DummySession에서 값 읽기가 제대로 이루어지지 않는 버그를 수정했습니다.
  4. v0.29 기준
    1. 선제 사격에서도 저격이 동작하여 한 전투에 저격이 두번 일어 날 수 있는 버그를 수정했습니다.
    2. 사령부 고급모드에서 다른 수뇌의 턴을 복사하는 기능이 아이폰에서 동작하지 않는 버그를 수정했습니다.
  5. v0.24 기준
    1. 장수 생성 시 보너스 생성 스탯의 범위가 잘못 표기되는 버그를 수정했습니다.
    2. 장수 생성 시 턴시간 고정이 0분만 가능한 버그를 수정했습니다.
  6. v0.20 기준
    1. 접속량정보에서 접속자 수가 나타나지 않는 버그를 수정했습니다.
    2. 거병후 즉시 국가가 강제해산되는 경우 몇몇 경우에 서버가 멈출 수 있는 버그를 수정했습니다.

기타 변경점

  1. 건국 시점에서 열리는 유산 포인트에 기본 적립 포인트를 상향합니다.
    1. 최후 4국: 1,000 → 5,000
    2. 천통국: 1,000 → 2,000
  2. 무작위 세계 시나리오를 추가합니다.
    1. 체 50기 이벤트 시나리오였습니다.
  3. 빙의만 사용하는 것으로 가정한 '아시아 명장전' 시나리오를 추가합니다.
    1. 해당 시나리오를 정상적으로 사용하기 위해서는 '임의 생성'을 금지하고, '빙의 가능'하도록 오픈해야합니다.
  4. 턴 조작기 고급모드에서 선택한 턴의 내용을 클립보드로 복사하는 기능을 추가합니다.
    1. 다른 유저에게 본인의 턴을 알리는데 사용할 수 있습니다.
  5. 사용되지 않는 구버전 코드를 제거합니다.
  6. 전투 시뮬레이터에서 입력가능한 값을 추가합니다.
    1. 시드 값을 입력하여, 실제 전투와 같은 변수를 입력하였다면, 동일한 전투를 볼 수 있도록 합니다.
    2. 유산 포인트로 구입할 수 있는 히든 버프도 입력할 수 있도록 합니다.

(2022-10-05) 커밋목록

주요 변경점

  1. 게임 플레이 흐름을 크게 바꾸는 밸런스 변경이 있습니다.
  2. 신규 유저 및 복귀 유저를 위해 유산 포인트를 추가 지급합니다.
    1. 이전에 플레이하지 않은 정식 깃수 1기당 500 유산 포인트씩, 최대 4,000 포인트를 지급합니다.
      1. 신규 유저는 4,000포인트를 받습니다.
    2. 이벤트 깃수(시즌 번호 0)가 아닌 정식 깃수에 장수를 생성하면 포인트를 받습니다.
    3. '소급적용'이 예정되어있습니다.
  3. 불가침 기간이 버그로 인해 설명 문구와 1개월 차이가 나던 점을 수정합니다.

엔진 변경점

  1. NPC AI 페이지에서 특정 커맨드에 따라 내부 상태를 다시 인식할 수 있도록 변경했습니다.
    1. 선포 등 주요 국가 상태를 바꾸는 사령턴을 입력한 NPC가 본인의 턴을 상황에 맞게 입력할 수 있게됩니다.
  2. 은퇴 시 유산 포인트 적용 방식을 각기 수정할 수 있도록 변경했습니다.

밸런스 수정

  1. 징병 전투특기를 재설계합니다.
    1. [군사] 징병시 훈사 70, 모병시 훈사 84 제공
    2. [기타] 통솔 순수 능력치 보정 +25%, 징병/모병/소집해제 시 인구 변동 없음
    3. 낙주(징병)은 기존 옵션에서 인구 변동 없음이 추가됩니다.
    4. 더하여 징병 전투특기자는 '후방발령' 자율 행동에 영향을 받지 않습니다.
  2. 게임 정식 개시 후 4년차(184년)부터 배신 수치를 1 늘립니다.
    1. 이전에 하야하였다면 1로 유지됩니다.
  3. 하야/비 재야 망명으로 인한 패널치가 배신 * 15%로 변경되고, 6회까지 중첩되도록 변경됩니다.
    1. 이전에는 배신 * 10%였습니다.
  4. 피장파장을 일종의 전략으로 취급합니다.
    1. 전략 사용이 가능할 때에만 피장파장을 사용할 수 있습니다.
    2. 피장파장을 사용하면 내부 재사용 대기시간으로 8개월이 필요합니다.
    3. 대신 다른 전략과 달리 전역 전략 대기시간을 늘리진 않습니다.
  5. 계략 성공률이 도시 소재 장수 수에 따라 변하도록 변경합니다.
    1. 기존 대비 (sqrt(도시소재 장수 수) - 1) * 5%p 만큼 성공률이 낮아집니다.
    2. 즉 1명일 때는 동일, 0명일 때에는 성공률 5%p 증가, 2명 이상일때는 성공률이 낮아집니다.
  6. 최대 임관년 수, 최대 연속 내정 성공, 천통 기은 은퇴할때 정산되지 않고 천통 시 정산됩니다.
  7. 옥란백용구가 강화됩니다.
    1. [전투] 남은 병력이 적을수록 회피 확률 증가. 최대 +50%p (기존 +30%p)

수정된 버그

  1. v0.29 기준
    1. 수동 은퇴 시 명예의 전당에 등재되지 않는 버그를 수정했습니다.
  2. v0.22 기준
    1. 유산포인트 계산식 중 최대 임관 년 수가 '하야/비 재야 망명'시에 0으로 초기화되는 버그를 수정했습니다.
  3. v0.20 기준
    1. 장수 회수 시 조사가 두번 붙는 문제를 수정했습니다.(류화영)
    2. NPC가 순간이동할 경우 보급이 끊긴 도시에도 이동이 가능한 버그를 수정했습니다.
    3. 불가침에서 '까지'가 해당 월을 포함하지 않던 버그를 수정했습니다.
      1. 184년 12월까지 불가침이라면, 185년 1월부터 선포가능합니다.
  4. v0.4 기준
    1. 카카오계정에서 '이메일'이 바뀐 경우 바뀐 이메일을 적용하도록 수정했습니다.

기타 변경점

  1. 서버 오픈 시, 기본 설정 값을 '체섭'외의 마이너서버에서 자주 활용하는 설정으로 변경했습니다.
    1. 자율 행동: 전부 선택
    2. 자율 행동 시간: 24시간
    3. 사실모드: 가상

(2022-09-01) 커밋목록

주요 변경점

  1. 밸런스 관련한 많은 변경이 있었습니다. 밸런스 수정란을 확인해주세요.

엔진 변경점

  1. 사용중인 DTO 라이브러리를 외부로 옮겼습니다.
  2. 사용하는 패키지들을 최신버전으로 올렸습니다.
    1. JavaScript쪽으로는 denque를 추가합니다.
  3. 디버그에 활용할 수 있도록 빌드 코드에 source-map을 활성화했습니다.
  4. 다음 API를 추가/변경했습니다.
    1. InvalidResponse - 정상 상태로 돌아오기 위해 필요한 행동 명시
      1. 로그인 에러 발생 시 Json 타입 반환
    2. Global/GetRecentRecord - 메인 페이지 동향(장수 동향, 개인 기록, 중원 정세)
    3. Nation/SetNotice - 국방 변경시 변경자와 변경 시점을 기록(미 노출)
  5. 사이트가 여러 도메인을 공유하더라도 카카오 OAuth 대응을 할 수 있도록 변경합니다.
  6. 내부 클래스 변경식에 PHP 8.1에 도입된 Enum을 키로 바로 사용할 수 있도록 수정합니다.

밸런스 수정

  1. 목우의 병종 상성을 '무상성'화 합니다.
    1. 보,궁,기,귀 병에 대해 종합적으로 2.25배 더 잘 싸웁니다.
    2. 이에 따라 상성이 남아있는 차병종은 충차(공/방)과 정란(방) 둘입니다.
  2. 유니크 아이템 경매시 현재 최고 입찰가보다 1% 더 높아야만 입찰할 수 있도록 변경합니다.
  3. 시간이 지날 수록 성벽을 강화합니다.
    1. 성벽 내부의 숨겨진 훈/사 값이 상대적으로 더 오르도록 수정합니다.
      1. 181년 60부터 시작하여 매 해마다 훈/사 값이 1씩 상승하여 2최대 110까지(231년) 상승합니다.
      2. 이전에는 180년 훈사 60/60, 220년에 훈사 87/87 240년에 훈사가 100/100이었습니다.
    2. 이에 따라서 183년에서는 성벽이 동일하며, 220년 기준으론 약 40%가량 더 성벽이 강력해집니다.
  4. 필살 전투특기에서 계수 향상 보정을 하향합니다.
    1. 일반 필살 계수: [1.3 ~ 2.0]
    2. 필살 전투 특기: [1.65 ~ 2.0]
      1. 이전 버전: [2.0 ~ 2.0]
  5. NPC가 조금 더 상위병종을 시도할 확률을 높입니다.
  6. 게임 시작 후 12월에 생성되는 인구 보정용 M장에의 비율이 변경됩니다.
    1. 무:지:무지장 비율이 기존 1:1:0에서 1:1:1로 변경됩니다.
  7. 성벽과 전투시 동일 살상 대비 소모되는 쌀이 20% 감소합니다.
  8. 궁병의 선제 공격을 공격/수비 상관없이 일관적으로 동작하도록 변경합니다.
    1. 공격시에도 수비 선제처럼 先 페이즈에 0.5 배율의 공격을 시도합니다.
  9. 무장은 1페이즈 계략 시도 추가 확률을 보정을 받지 않도록 변경합니다.
    1. 이전에는 1페이즈 한정으로 계략 시도 확률이 3배 높게 보정되었습니다.
  10. 수비하지 않도록 하는 경우 훈련/사기 감소치가 -3/-3에서 -3/-6으로 변경됩니다.
  11. 유니크 경매장에서 마지막 연장 시간을 1시간에서 30분으로 감소합니다.
  12. 의병모집 사용시 생성되는 의병의 수를 조정합니다.
    1. 기존의 5 + (국가별 평균장수수 / 10)의 반올림에서 3 + (국가별 평균장수수 / 8)의 반올림으로 바꿉니다.
    2. 초기 시점에서 나오는 의병은 줄고, 국가별 장수수가 평균 80명이 되는 시점에서 역전합니다.
  13. 전투시 얻는 기술량이 변경됩니다
    1. 공격자 기술: 공격자가 입은 피해 * 0.012 (구 0.01)
    2. 수비자 기술: 수비자가 입은 피해 * 0.009 (구 0.01)

수정된 버그

  1. v0.31 기준
    1. 준비중인 감찰부 '로그 더 불러오기'가 정상 작동하지 않는 버그를 수정했습니다.
      1. 아직 UI에 드러나지는 않습니다.
    2. 182년 1월 이후 자동 해산 실행시 에러 로그가 남는 버그를 수정했습니다.
    3. 장수를 새로 생성하거나, 유산포인트 관련 획득이 전혀 없는 경우 경매장을 볼 수 없는 버그를 수정했습니다.
    4. 새 감찰부에서 장수 부상 정도가 표기되지 않는 버그를 수정했습니다.
    5. 새 감찰부에서 남은 시간이 제대로 표기되지 않는 버그를 수정했습니다.
    6. 새 감찰부에서 명마, 무기, 서적, 도구, 특기 등에서 툴팁이 빈번하게 나타나지 않는 버그를 수정했습니다.
    7. 새 부대 편성에서 권한이 없더라도 '부대명 변경' 버튼이 보이는 버그를 수정했습니다.
    8. 새 부대 편성에서 부대장과 다른 도시에 있는 장수가 강조되지 않는 버그를 수정했습니다.
    9. 새 부대 편성에서 부대장 집합 순서대로 정렬되지 않는 버그를 수정했습니다.
    10. 감찰부, 부대 편성, 세력 장수 페이지에서 벌점, 숙련, 명성 등급 텍스트가 한단계 높게 뜨는 버그를 수정했습니다.
    11. 서버 리셋 페이지 등에서 CSS가 제대로 로딩되지 않아 UI가 깨지는 버그를 수정했습니다.
    12. 은퇴 시 서버가 멈추는 버그를 수정했습니다.
    13. 난수 생성기 시드 중에서 '익명 이름 풀' 생성 시드값이 잘못된 버그를 수정했습니다.
  2. v0.30 기준
    1. 베팅을 원래 의도인 10이 아니라 1씩 가능한 버그를 수정했습니다.
    2. 빙의장이 유산을 얻을 수 없는 버그를 '또 다시' 수정했습니다.
  3. v0.21 기준
    1. 의병 모집 시, 의병의 명성/계급이 장수 평균치로 설정되지 않는 버그를 수정했습니다.
  4. v0.20 기준
    1. 전쟁중인 NPC가 전방 워프를 시도할 때 도시 중요도를 계산하는 과정에서, '종사' 임명 여부를 따지지 않는 버그를 수정했습니다.
      1. 태수, 군사, 종사가 모두 임명된 도시는 하나도 임명되지 않은 도시보다 가중치(이동할 확률)가 4배 더 높아야 합니다.

기타 변경점

  1. 감찰부에서 '이전', '다음' 버튼을 추가했습니다.
  2. 부대 편성에서 1000px 모드 버튼 위치를 좌하단으로 옮겼습니다.
  3. 아시아 명장전 시나리오를 추가합니다.
  4. 몇몇 사이시옷 표기를 수정합니다.

(2022-07-27) 커밋목록

주요 변경점

  1. 감찰부 페이지를 Vue3로 재 작성했습니다.
  2. 부대편성 페이지를 Vue3로 재 작성했습니다.
    1. 기존 '암행부 연동'이 기본 통합됩니다.
    2. 장수에 마우스를 올린 경우, 장수 카드가 표시됩니다.
      1. 암행부 권한이 없는 경우, 간이 카드가 표시됩니다.
    3. 모바일용 500px 모드를 추가했습니다.
  3. 사령부에서 부대장 발령 시, 부대장대신 부대명으로 표기합니다.
    1. 장수 선택란에서 부대명으로 검색하면 부대장이 나타납니다.

엔진 변경점

  1. DTO 관련 코드를 안정화했습니다.
  2. API를 추가/변경했습니다.
    1. Nation/GetGeneralList
      1. 좀더 낮은 권한에서 더 많은 정보가 보입니다.
      2. 부대 정보가 같이 보입니다.
    2. Nation/GetNationInfo
      1. 국가 정보를 조회할 수 있습니다.
    3. Troop/ExitTroop
    4. Troop/JoinTroop
    5. Troop/KickFromTroop
    6. Troop/NewTroop
    7. Troop/SetTroopName
      1. 부대 탈퇴, 가입, 추방, 생성, 이름 변경
  3. js/css 빌드 코드를 최적화해, 빌드 시간이 대폭 감소되었습니다.
    1. ZEN3 CPU기준 최대 220초 → 40초 가량으로 줄었습니다.

밸런스 수정

  1. 유니크 경매장 진행을 일부 변경합니다.
    1. 랜덤 유니크 등으로 경매 진행중인 부위에 아이템을 얻은 경우 추가 입찰을 불가능하게 바꿉니다.
    2. 본인이 연 경매를 다른 유저가 낙찰받을 때 강제 연장이 일어난 경우, 주최자를 (상인)으로 바꿉니다.
      1. 이에 따라 새로 경매를 열 수 있게됩니다.
  2. 벽력거의 회피를 낮추고, 비용을 높였습니다.
    1. 회피 10% → 5%, 기본비용 18 → 20
  3. 목우의 비용을 낮췄습니다.
    1. 기본비용 18 → 15
  4. NPC가 기존보다 쌀이 조금 더 적더라도 징병을 시도합니다.

수정된 버그

  1. v0.31 기준
    1. 깃수 종료 시 열려 있는 경매가 종료되지 않는 버그를 수정했습니다.
    2. 183년 이전에 공백지/선포 관련 외교 상태 버그를 수정했습니다.
      1. 이제 의도대로 작동합니다.
    3. 장수 이름이 숫자로만 된 경우 경매장이 표시되지 않는 버그를 수정했습니다.
    4. 사전 거병 직후 해산할 경우 서버가 정지하는 버그를 수정했습니다.
    5. 유니크 경매에서 동일 부위 제한에 걸렸을 때 의도보다 자주 메시지가 오는 버그를 수정했습니다.
  2. v0.30 기준
    1. 몇몇 기능에서 사용되는 숫자 입력기에서 최소값, 최대값이 매 입력마다 기록되어 이상하게 입력되는 버그를 수정했습니다.
  3. v0.28 기준
    1. 납금박산로, 주판 유니크가 동작하지 않는 버그를 수정했습니다.
  4. v0.27 기준
    1. 회의실에서 줄바꿈이 동작하지 않는 버그를 수정했습니다.
  5. v0.23 기준
    1. 천하통일되더라도, 유산포인트로 구매가 가능한 버그를 수정했습니다.
  6. v0.20 기준
    1. 자국으로 원조가 가능한 버그를 수정했습니다.
      1. 금쌀 변화는 없이 외교 기한만 늘어나는 현상이 발생합니다.
    2. 강행시 훈련, 사기가 떨어지지 않는 버그를 수정했습니다.
    3. 불가침 파기시, 메시지 헤더가 의도와 다르게 나타나는 버그를 수정했습니다.

기타 변경점

  1. 부대 집합시 불필요한 조사를 제거했습니다.
  2. NPC 정책에서 부상 정도에 따라 '요양' 사용 여부를 정할 수 있습니다.
  3. 전투에서 각종 효과 텍스가 뜨는 순서를 재조종했습니다.
  4. 유니크 경매장에서 아이템에 마우스 오버/탭을 해서 효과를 볼 수 있도록 바꿉니다.

(2022-07-06) 커밋목록

주요 변경점

  1. 군주/외교권자에게 부대의 이름을 바꿀 수 있도록 하는 기능을 제공합니다.
  2. 사전 거병 기능을 추가했습니다.
    1. 서버 가오픈 기간 동안 '내 정보&기능' 페이지에서 실행할 수 있습니다.
    2. 사전 거병 시 더 이상 가오픈 기간내 장수 삭제를 할 수 없게됩니다.
    3. 건국은 이전과 마찬가지로 서버 개시 후 2턴째부터 가능합니다.

엔진 변경점

  1. 다음 API를 추가하였습니다.
    1. General/BuildNationCandidate - 사전 거병
    2. General/DieOnPrestart - 가오픈 장수 삭제(호출 경로 이전)
    3. InheritAction/GetMoreLog - 유산 페이지 로그
    4. Nation/SetTroopName - 부대명 지정

밸런스 수정

  1. 유산 포인트로 장수를 생성할 때 '도시 지정'과 '턴 시간 지정'을 동시에 설정할 수는 없도록 변경합니다.
  2. 도구 유니크 밸런스를 수정합니다.
    1. 노군입산부 - 회피 확률 -30%p → -25%p
    2. 구정신단경 - 격노마다 대미지 5% 추가 중첩 추가
    3. 납금박산로 - 성공률 +20%p → 15%p
    4. 두강주, 이강주, 보령압주 - 5년마다 +1를 4년마다 +1로 강화
    5. 구석, 동작 - 상승량 +15% → +20%
    6. 상편 - 공격력 증가 최대 +50% → +60%
    7. 평만지장도 - 전략 대기 기간 -15% → -20%
    8. 박혁론 - 격노 불가 추가
    9. 낙주 - 징 모병비 -50% → -30%
    10. 둔갑천서 - 필살확률 +25%p → +20%p
  3. 회피 발동시 피해량 감소를 1/5에서 1/6로 강화합니다.

수정된 버그

  1. v0.20 기준
    1. 초반 내정기간(일반 시나리오 기준 183년 이전)에 NPC국가가 여러 국가에 동시 선포할 수도 있는 버그를 수정합니다.

기타 변경점

  1. 도시 정보 우상단의 시간을 서버 실행 시간으로 변경합니다.
  2. 유산 관리 페이지에서 이전 로그를 가져올 수 있도록 변경합니다.
  3. 삼모시네마틱유니버스 시나리오를 업데이트합니다.
  4. 금액 선택란에서 +만 을 추가했습니다.
  5. 토너먼트 진행 주기를 서버 진행 단위와 일치하도록 변경합니다.
    1. 단 5분 미만 턴은 5초로 고정됩니다.
    2. 20분 서버에 토너먼트 5초를 선택하였을 때 토너먼트 유산 포인트를 많이 얻는 경우를 방지합니다.
  6. 모반 시도를 제거합니다.
  7. 메인페이지 모바일 모드에서 하단 바 높이를 약간 높였습니다.
  8. 천통국 내기가 열린 경우 개인 메시지를 통해 알립니다.
  9. 토너먼트, 베팅장의 버튼을 약간 더 크게하였습니다.

(2022-06-15) 커밋목록

주요 변경점

  1. 새로운 난수 생성 시스템을 도입했습니다.
    1. 서버를 리셋할 때 숨겨진 시드를 이용하여 난수를 생성합니다.
    2. 시드값이 결정되어있으므로 결과값은 연, 월, 행동에 따라 일관적인 난수를 생성합니다.
    3. 외부의 공격자, 악의적인 운영자가 난수값을 임의로 조작하는 행동이 '불가능함'을 증명할 수 있습니다.
    4. 실제 난수는 시드를 확인할 수 있는 서버관리자가 예측할 수 있으나, 한계가 있어 마찬가지로 어떤 난수가 나올지는 '모릅니다'
  2. 설문조사 시스템을 재작성하였습니다.
    1. 이전 설문조사 결과를 확인할 수 있습니다.
    2. 하나 이상을 선택할 수 있는 설문조사 타입도 추가됩니다.
  3. 경매장을 재작성하였습니다.
    1. 상회입찰 시 개인메시지로 알려줍니다.
    2. 다른 유저의 입찰기록이 남습니다.
  4. 유니크 경매장을 새롭게 추가합니다.
    1. 자세한 정보는 https://sam.hided.net/xe/community/25610 를 참고하세요.
    2. 유산포인트로 유니크 아이템을 구입하는 시스템을 대체합니다.
    3. 서버 시작 후 3개월이 지나서부터 경매를 시작할 수 있습니다.
    4. 유저마다 동시에 유니크 경매를 하나씩만 열 수 있습니다.
    5. 경매를 시작하면 중원정보에 알려집니다.
    6. 장수명 대신 가명으로 진행되며, 다른 경매에도 같은 가명을 사용합니다.
    7. 진행중인 경매에서는 부위마다 하나씩만 1순위 입찰할 수 있습니다.
      1. 다른 유저가 상회입찰한 경우 같은 부위의 다른 경매에 입찰할 수 있습니다.
    8. 경매는 24턴동안 진행되며, 종료 직전에는 약 1턴 분량의 시간까지 상회입찰로 연장됩니다.
    9. 만약 유니크 획득 제한(기한별 최대 수, 혹은 같은 부위에 유니크 소지)에 걸린 경우 강제로 24턴이 연장됩니다.

엔진 변경점

  1. API 호출 시 검증코드를 개선합니다.
    1. 일부 요소들(문자열 배열, 정수, 실수)에 대해서 조금 더 잘 검사합니다.
  2. 다음 API를 추가했습니다.
    1. Auction/BidBuyRiceAuction - 쌀 구매 경매 입찰
    2. Auction/BidSellRiceAuction - 쌀 판매 경매 입찰
    3. Auction/BidUniqueAuction - 유니크 경매 입찰
    4. Auction/GetActiveResourceAuctionList - 열린 쌀 구매/판매 경매 리스트 조회
    5. Auction/GetUniqueItemAuctionDetail - 열린 유니크 경매 리스트 조회
    6. Auction/GetUniqueItemAuctionList - 유니크 경매 상세 입찰 정보 조회
    7. Auction/OpenBuyRiceAuction - 쌀 구매 경매 시작
    8. Auction/OpenSellRiceAuction - 쌀 판매 경매 시작
    9. Auction/OpenUniqueAuction - 유니크 경매 시작
    10. Vote/AddComment - 설문조사 댓글 작성(리팩토링)
    11. Vote/GetVoteDetail - 설문조사 상세 정보(리팩토링)
    12. Vote/GetVoteList - 설문조사 목록 보기
    13. Vote/NewVote - 새 설문 열기(리팩토링)
    14. Vote/Vote - 설문 응답하기(리팩토링)
  3. 서버 생성 시 hiddenSeed를 생성합니다.
  4. 행동 단위마다 hiddenSeed와 추가 인자를 조합하여 별개의 난수 시드를 생성하도록 구현했습니다.
    1. 기본적으로 hiddenSeed + 구분자(행동명칭) + 연 + 월 + (행동코드) + (국가ID) + (장수ID) 구성입니다.
      1. 세부 seed가 같더라도, 내부 실행 조건에 따라 얼마든지 결과가 달라질 수 있습니다.
        1. 예1: 전투 시드는 같지만 수비자의 수비 켬/끔으로 인해 전투 양상이 달라짐
        2. 예2: 설문조사 시드는 같지만 총 유저의 숫자가 달라저 유니크 당첨 확률이 달라짐
        3. 예3: 내정턴 실행 시드는 같지만 발령지가 달라져 커맨드 성공 확률이 달라짐
      2. seed가 같고 내부 실행 조건도 같다면 '언제나 같은 결과'를 보장합니다.
        1. 이후 커맨드 실행 시 버그가 의심되는 경우 재현하여 버그 여부를 좀 더 쉽게 확인할 수 있습니다.
    2. 구분자를 다르게 갖는 개별 항목은 다음과 같습니다.
      1. 월초 시스템 동작 - 연, 월
      2. 작위 보상 시 수여 장수 - 연, 월, 국가ID
      3. 작위 보상 시 수여 아이템 - 연, 월, 국가ID, 장수ID
      4. 부대장 생성 시 - 연, 월, 국가ID
      5. 군주 사망 후 후계 선정 - 연, 월, 군주ID
      6. NPC 수행턴 결정 시 - 연, 월, 장수ID
      7. 장수 사전 효과(치료 등) 발동 시 - 연, 월, 장수ID
      8. 장수 사령턴 실행 시 - 연, 월, 장수ID, 커맨드명
      9. 장수 일반턴 실행 시 - 연, 월, 장수ID, 커맨드명
      10. 전투 개시 시 - 연, 월, 출병장수ID, 수비도시ID
      11. 커맨드 실행 수 유니크 획득 시도 시 - 연, 월, 장수ID
      12. 설문 조사 유니크 획득 시도 - 설문ID, 장수ID
      13. 토너먼트 베팅 시 NPC들의 초기 베팅 - 베팅ID
      14. 빙의장 선택 시 - 유저ID, 시간
      15. NPC 추방 시 메시지 - 연, 월, 장수ID
      16. 국가 멸망 시 분실량 - 연, 월, 점령국ID, 점령장수ID, 도시ID
      17. 장수 생성 시 임의 스탯 - 유저ID, 생성시각
      18. 유산 포인트 턴 시간 리셋 - 유저ID, 장수턴
      19. 유니크 경매에서 장수 가명 풀 생성 - '공란' (버그로 추정…)
      20. NPC 다량 생성 시 - 연, 월
  1. 기존 DTO 라이브러리 대신 새로운 DTO 라이브러리를 직접 구현하여 적용했습니다.
  2. 내부 자료구조로 Enum(PHP8.1) Ds\Map(pecl)을 활용합니다.
  3. 다음 DB 테이블을 수정했습니다.
    1. vote table 추가 - 새 설문조사
    2. general table 수정 - 이전 vote column 제거

밸런스 수정

  1. 도기 유니크 아이템에서 얻을 수 있는 금의 수량을 변경했습니다.
    1. 5년마다 +10,000에서 2년마다 +5,000으로 상향합니다.
  2. 임관 시 이전 임관국 제한을 없앴습니다.
    1. 이전에는 183년 이후 망명/하야/추방 시, 이전 국가로 직접 임관이 불가능했습니다.
  3. 사기진작 시 표기대로 금 100을 소모합니다.
    1. 여태까지 버그로 금을 소모하지 않았습니다.
  4. m장이 재야일 때 임관을 시도하는 확률을 조금 더 낮춥니다.
    1. 예전보다 더 천천히 임관하며, 그 사이에 견문/인재탐색을 더 수행할 것입니다.

수정된 버그

  1. v0.30 기준
    1. 연감에서 연/월을 제대로 선택할 수 없는 버그를 수정했습니다.
    2. 왕조 일람에서 지도가 다른 경우 연감에서 지도가 나타나지 않는 버그를 수정했습니다.
    3. 비급 모드에서 '필살 비급'이 필살 전투 특기 다른 버그를 수정했습니다.
    4. 감찰부 하단 버튼이 '닫기'가 아니라 '돌아가기'인 버그를 수정했습니다.
  2. v0.27 기준
    1. 피장파장 커맨드 사용시 실제 사용 가능 여부와 상관 없이 (불가)로 나타나는 버그를 수정했습니다.
  3. v0.21 기준
    1. 깃수가 진행중일 때 이민족일 발동되는 경우, 발생할 수 있는 희귀케이스(이성 1성국)에서 서버가 멈추지 않도록 수정했습니다.
  4. v0.20 기준
    1. 모든 소/중성에서 국가가 건국된경우, 더 이상 장수를 생성할 수 없는 버그를 수정했습니다.
    2. 초기에 자동 생성되는 NPC들의 사망 년도가 의도와 다르게 똑같은 버그를 수정했습니다.
      1. 앞으로는 다양한 기간에 걸쳐 조금씩 사망합니다.
    3. 사기진작 커맨드가 실제로는 금 소모를 하지 않는 버그를 수정했습니다.
      1. 초반에 금쌀이 부족한 경우에 전쟁을 하는 경우 더욱 더 체감될 것입니다.
  5. 기타
    1. 크롬 업데이트로 일부 버튼의 테두리가 사라지는 버그를 수정했습니다.

기타 변경점

  1. 연감에서 국가랭킹의 위치를 바꿀 수 있도록 기능을 추가했습니다.
  2. 방랑 커맨드를 사용할 수 없도록 비활성화합니다.
    1. 군주의 즉시 방랑 대신 국가를 포기하는 적절한 방안이 나타나면 다시 등장할 수 있습니다.
  3. 장수 아이콘 용량 제한을 30kb에서 50kb로 올렸습니다.
  4. 삼모 시네마틱 유니버스 시나리오를 추가합니다.
  5. 인사부에서 추방 버튼을 다시 가장 아래로 내립니다.
    1. 임명 대신 추방을 대신 선택하는 불운한 사태를 막기 위해 다시 내렸습니다.

(2022-05-13) 커밋목록

주요 변경점

  1. 연감 페이지를 재 설계했습니다.
    1. 모바일 대응(500px)을 포함하여 UI가 조금 다릅니다.
    2. 이전에 보았던 페이지들은 벌점을 소모하지 않습니다.
  2. 명장 일람에 유산 포인트 소모, 유산 포인트 획득 랭킹을 추가합니다.
    1. 매해 1월, 7월에 갱신됩니다.
    2. 깃수 중 장수들의 정보는 공개되지 않으며, 천통 후 공개됩니다.
  3. 보유중인 아이템 파기 기능을 추가했습니다.
    1. 내 정보&설정에서 아이템을 버릴 수 있습니다.
    2. 파기하거나, 판매하는 아이템이 유니크일 경우에는 중원 정세에 알립니다.
  4. 유산 포인트로 유니크를 구입할 때 같은 부위에 중복 구입이 불가능하도록 변경합니다.
    1. 이미 입찰한 경우에는 포인트를 환불합니다.
    2. 다른 유니크 변경하고 싶다면 판매 또는 파기 후 시도해야합니다.

엔진 변경점

  1. 클라이언트 영역에서 게임 내 정적 변수들을 가져오는 코드를 최적화했습니다.
  2. 다음 API를 추가합니다.
    1. General/DropItem - 보유중인 아이템 버리기
    2. General/GetGeneralLog - 개인 기록 (현재 미사용)
    3. Global/ExecuteEngine - proc.php 대체용 엔진 호출 (현재 미사용)
    4. Global/GeneralListWithToken - 빙의 일람용 장수 목록
    5. Global/GetCachedMap - 최근 지도 및 정세(10분 캐시)
    6. Global/GetCurrentHistory - 연감 현재 연월
    7. Global/GetHistory - 연감 과거 연월
    8. Global/GetDiplomacy - 중원 정보
    9. Global/GetMap - 현재 지도
    10. Nation/GetGeneralLog - 감찰부 (현재 미사용)
  3. 다음 API의 동작을 변경합니다.
    1. Nation/GeneralList
      1. 권한 조정
      2. 이번 달 접속량, 특기 획득 연도 정보 값, 스탯 경험치, 숙련도 정보 추가
  4. Vue3로 작성된 새 지도 렌더러를 추가합니다.
    1. jQuery로 동작하던 구버전과 외형상 차이는 아직 없습니다
    2. 대신 내부적인 수행 성능이 다릅니다.
    3. 현재 연감, 커맨드 선택창에 적용됩니다.
  5. API Call에서 동작을 수정합니다.
    1. Get 호출에서 arg 지정
    2. 캐시 컨트롤에서 max-age, public/private 지정
    3. prefix를 지정하여 Root에서 각 게임 호출
    4. Session을 전혀 사용하지 않는 DummySession을 정식 적용합니다.
  6. EventEngine에 다음 Condition과 Action을 추가합니다.
    1. Condition/DeateRelative - 게임 정식 시작 연월을 기준으로한 상대 연월
    2. Action/NoticeToHistoryLog - 중원 정세에 메시지 출
  7. KVStorage에서 이제부터 대소문자를 구분합니다.
  8. 베팅 로직을 변경했습니다.
    1. 구형 토너먼트 베팅 로직을 재작성한 신규 베팅 로직에 통합했습니다.
      1. 이전 betting 테이블은 제거됩니다.
    2. BettingDetail이 Array가 아니라 Record일 수도 있도록 변경했습니다.
  9. 내 정보&설정 및 감찰부에 사용할 Vue3 Component를 작성했습니다.
    1. 이후 패치에 정식 반영됩니다.
  10. 최소 PHP 버전을 8.1로 조정합니다.
  11. 유산 포인트, 명장 일람 키를 Enum으로 사전 적용합니다.
  12. KVStorage 및 LazyValueUpdate의 키로 Enum(\BackedEnum)을 받을 수 있도록 수정합니다.
  13. KVStorage 등에서 Ds\Map을 적용합니다.
  14. 게임 엔진에서 치명적인 에러가 발생해도 에러 로그를 남길 수 있도록 수정합니다.

밸런스 수정

  1. 궁병의 수비 선제 대미지를 일반 평타 공격(100%)에서 50%로 하향합니다.
  2. 의술 전특 및 의술 유니크의 치료 효과를 표기에 맞게 50% 감소에서 30% 감소로 변경합니다.
  3. 필살 전투 특기를 상향합니다.
    1. 필살 발동 시 1.3 ~ 2.0배 사이에서 임의 배수였던 것을 항상 2.0배를 적용하도록 변경합니다.
  4. 저지 발동 시 숙련 뿐만 아니라 명성도 추가합니다.

수정된 버그

  1. v0.29 기준
    1. 베팅창에서 본선 장수들이 정해져 있지 않을 때 내부 에러가 발생하는 버그를 수정했습니다.
    2. 새롭게 작성한 세력 장수 페이지에서 도시 관직, 기밀 권한 조건을 달성해도 암행부 정보가 보이지 않는 버그를 수정했습니다.
  2. v0.28 기준
    1. 국가 베팅에서 당첨자가 없을 경우 서버가 멈추는 버그를 수정했습니다.
  3. v0.27 기준
    1. 빙의장이 연속 내정 성공에 대한 유산 포인트를 얻지 못하는 버그를 수정했습니다.
  4. v0.23 기준
    1. 새로 작성한 Vue3 페이지에서 사용자 정의 CSS를 사용할 수 없는 버그를 수정했습니다.
  5. v0.22 기준
    1. 태수국이 생성될 때 기술치가 항상 0으로 생성되는 버그를 수정했습니다.
      1. 원래 의도에 따르면, 평균 기술치를 가져야합니다.
  6. v0.20 기준
    1. 전투 시뮬레이터에서 숙련 등급으로 올바르지 않은 값이 입력되면 0으로 반영하도록 수정했습니다.
      1. json 입력 등으로 'null'이 허용되는 상황이었습니다.
    2. 천도했을 때 국가 캐시가 적용되지 않는 버그를 수정했습니다.
      1. 동일 엔진 실행 주기 내에 천도 직후 긴급 천도가 일어나는 경우 '수도가 사라지'는 현상이 발생했습니다.
    3. 환약 사용 기준을 '경상'에 놓았을 때 일부 경상에 대해서는 환약을 사용하지 않는 버그를 수정했습니다.
    4. AI의 포상 기준에서 전쟁장/내정장 선택 기준에서 치명적인 버그를 수정했습니다.
      1. 전쟁 종료 직후 년도가 바뀌기 전에 임관한 쟁장이 있을 경우 국가 내 모든 장수가 '내정장'으로 인식되는 버그였습니다.
      2. 이전에 100명 징병하면 포상을 주는 것으로 우회해왔습니다.

기타 변경점

  1. 감찰부에서 모바일 대응 모드(500px)를 추가했습니다.
    1. 검색 등은 기존의 세력 장수를 활용해주세요.
  2. 중원정보, 명장일람, 명예의 전당에서 모바일 대응 모드(500px)를 추가했습니다.
    1. 중원정보는 Vue3로 재 작성되었습니다.
  3. 턴 선택기에서 얇은 커맨드의 높이를 높여 터치하기 쉽도록 변경했습니다.
  4. 회원 가입시 닉네임을 '변경할 수 없음'을 알리는 메시지를 추가했습니다.
  5. 유산 포인트로 유니크를 구입할 때 첫번째 칸을 '공란'으로 둡니다.
  6. 유산 관리 페이지 및 인사부 임명/추방에서 조사를 자동으로 적용합니다.
  7. 게임 시작 시 거병/건국, 출병 제한 관련 기간에 대해 중원 정세 메시지로 안내합니다.
  8. 서버 선택 페이지(게이트웨이)의 버튼 모양을 바꿉니다.
  9. 걸그룹대전 시나리오를 업데이트했습니다.

(2022-04-14) 커밋목록

주요 변경점

  1. 턴 입력기를 전면 재 작성했습니다.
    1. 기존의 단일 선택기 + 검색 방식에서 넓은 버튼을 클릭하는 형태로 바꿉니다.
    2. 카테고리마다 세부 커맨드를 선택할 수 있습니다.
    3. 일반 / 고급 모드를 분리하여 제공합니다.
    4. 일반 모드에서는 턴별로 옆의 버튼을 클릭하여 빠르게 커맨드를 입력할 수 있습니다.
    5. 고급 모드에서는 드래그를 포함하여 다음과 같은 기능을 제공합니다.
      1. 최근 실행 턴 입력(모병 등 세부 입력이 포함된 커맨드 포함)
      2. 잘라내기, 복사하기, 붙여넣기
      3. 선택한 턴을 이후로 반복하기
      4. 선택한 턴을 비우기(휴식)
      5. 지우고 당기기, 뒤로 밀기
      6. 보관하기, 보관한 턴 사용하기
    6. 보관함은 같은 서버(체, 퀘 등) / 같은 지도이면 깃수가 바뀌어도 유지됩니다.
  2. 통합 세력 장수/암행부 페이지를 추가했습니다.
    1. 용도에 따라 보여주는 항목을 자유롭게 설정할 수 있으며, 설정값을 보관할 수 있는 기능을 제공합니다.
    2. 필터를 제공하여 검색하거나, 대소비교 조건을 걸어 찾을 수 있습니다.
    3. 원하는대로 정렬할 수 있습니다. 키보드를 사용할 수 있다면 2단 이상의 정렬도 가능합니다.
    4. 기존 세력 장수 / 암행부에서 보여주던 컬럼에 더해, 최근 전투, 전투 수, 승리 수, 살상률도 볼 수 있습니다.
    5. 현재 세력 장수 페이지에서 장수를 클릭하면 감찰부를 보여줍니다.
    6. 이후 이 페이지를 사령부의 발령, 포상 등에서 바로 사용할 수 있도록 할 예정입니다.
  3. 궁병군에 '선제 사격'을 추가합니다.
    1. 수비할 경우 사전에 '先'이라고 뜨는 0페이즈 공격을 시도합니다.
      1. 항상 일반 공격으로만 동작하며, 회피, 치료할 수 있습니다.
      2. 0페이즈 공격이므로 아군, 적군 모두 위압이 동작하지 않습니다.
        • (위압은 1페이즈에 동작합니다)
      3. 궁병 본인은 공격받지 않습니다.
      4. 기병이 공격하던 경우 선제 공격을 받으면 돌격을 멈춥니다.
    2. 공격할 경우 1페이즈에서 피해를 반으로 줄입니다.
    3. 대신 모든 궁병에서 회피를 5%p 낮춥니다.

엔진 변경점

  1. 각 entrypoint 별로 제공되는 JavaScript 변수를 통일하는 작업을 진행중입니다.
    1. 변경 작업이 완료되면 모든 변수는 window.staticValues 아래에 위치하게 될 것입니다.
  2. 다음과 같은 API를 추가했습니다.
    1. Command/ReserveBulkCommand API를 추가합니다.
      1. 턴 입력기에서 보관함 등의 명령을 한번의 호출로 해결하기 위해 작성되었습니다.
    2. Global/GetConst
      1. 게임 내에서 사용하는 정적 변수(사용가능한 병종, 특기 등) 목록과 값, 그에 대한 설명을 담고 있습니다.
      2. 깃수 단위로 캐싱가능한 값입니다.
    3. Nation/GeneralList
      1. 세력 장수/암행부에서 공통으로 사용할 수 있는 정보를 반환합니다.
  3. TypeScript API 호출부를 재설계했습니다.
    1. Argument, Response Type을 사전에 SammoAPI에 정의하도록 합니다.
    2. API에서 HTTP Method를 지정할 수 있도록 했습니다.
    3. axios대신 fetch를 사용합니다.
    4. API를 이용할 때 사용자 정의된 숫자값, 문자열을 사용할 수 있도록 추가했습니다.
      1. GET method에서 별도 argument가 필요할 때 특히 유용합니다.
  4. 개발 환경에서 linter에 조금 더 강력한 룰을 적용했습니다.
  5. APIHelper에서 캐시 기능을 실제로 사용할 수 있도록 재 구성했습니다.
    1. GET 호출에서 의도에 따라 304 Not Modified를 반환할 수 있게 됩니다.
  6. 전투 엔진에서 '전투 페이즈'가 항상 1씩 증가한다는 가정을 제거했습니다.
    1. 중간에 페이즈가 감소하는 경우가 있을 수 있으므로, 앞으로 구현에 주의가 필요합니다.

밸런스 수정

  1. 불가침 최소 제안 기간을 1년(12개월)에서 6개월로 변경합니다.
  2. 랜덤 임관 시, 유저장의 가치를 조금 더 높게(1.0 → 1.2) 쳐줍니다.
    1. 이에 따라 유저장이 적은 국가는 NPC가 조금 더 많아집니다.
  3. 계략 성공률 보정 최대치는 50%로 제한합니다.
    1. 이전에는 보정에 따라 100% 근처까지 도달할 수 있었습니다.
  4. 과실주(상성)가 대등한 병종에서도 효과를 보여주도록 수정합니다.
    1. 이전에는 유리한 병종에서만 효과가 있었습니다.
  5. 궁병에게 '선제 페이즈' 기능을 추가했습니다.
    1. 수비시 피해없는 추가 1페이즈 공격, 공격시 첫 페이즈 피해 반감입니다.
    2. 위의 주요 변경점 항목을 참고해주세요.
  6. 수뇌/관직 전투력 보정을 수정합니다.
    1. 수비 시, 공격 시 나누지 않고 항상 작동합니다.
    2. 군주: 공격 +7%, 피해 -7%
    3. 참모: 공격 +5%, 피해 -5%
    4. 무장 수뇌: 공격 +10%
    5. 지장 수뇌: 피해 -10%
    6. 도시 관직: 공격 +5%, 피해 -5%

수정된 버그

  1. v0.29 기준
    1. 국가방침에 이미지를 올릴 수 없는 버그를 수정했습니다.
  2. v0.28 기준
    1. 빙의 메뉴에서 장수 목록 보기를 사용할 수 없는 버그를 수정했습니다.
      • (내부 구조 변경으로 인해 다시 생겼을 수 있습니다..)
    2. 몇몇 페이지(암행부 등)에서 NPC 종류별 색상이 적용되지 않던 버그를 수정했습니다.
    3. 천통국 베팅에서 베팅 대상에 들어가지 못한 국가가 성공 대상인 경우 베팅이 완료되지 않는 버그를 수정했습니다.
  3. v0.27 기준
    1. 초성 검색에서 대상에 한/영/특수문자가 섞인 경우 제대로 검색되지 않는 버그를 수정했습니다.
  4. v0.22 기준
    1. NPC가 불가침을 제안하는 기준으로 '최소 6개월'일 때 불가침을 하지 않는 버그를 수정했습니다.
  5. v0.20 기준
    1. 임관, 하야 시 부대에 탑승한 경우 부대 정보가 여전히 남아있던 버그를 수정했습니다.
      1. 위 버그가 발생하면 사령부 발령 페이지가 동작하지 않았습니다.
    2. 백성 동원 수행시 세력 정보에 잘못된 형태로 로그가 남는 버그를 수정했습니다.
    3. 여러 이유로 1인국이며, 군주가 NPC인 경우 12월/6월 군주턴에 서버가 정지하는 버그를 수정했습니다.
  6. v0.4 기준
    1. 토너먼트에서 한쪽 슬롯이 가득차면 다른 자리가 비어있더라도 참가가 불가능한 버그를 수정했습니다.

기타 변경점

  1. 토너먼트, 베팅장이 열렸을 때 내부 동작을 수정합니다.
  2. 베팅장에서 장수 아래에 장수의 능력치를 보여줍니다.
  3. 악질유저무쌍! 시나리오를 추가합니다.
  4. 1/7월에서 내정 1% 감소 후, 세율에 따라 내정치가 변하도록 수정합니다.
    1. 기존에는 순서가 반대여서, 세율을 어떻게 설정하더라도 도시의 내정이 100% 차있는 것이 불가능했습니다.
  5. 세력도시 페이지에서 도시 별 금/쌀 수입을 보여줍니다.
  6. 도기를 판매시 국고에만 금/쌀이 추가되던 것을 장수와 국고 반반으로 나눕니다.
  7. 랜덤 턴, 전투 특기 초기화 사용시 필요 유산이 점차 증가한다는 설명을 추가했습니다.
  8. 4강 국 선정 베팅에서 베팅 포인트 수령 기준을 변경합니다.
    1. 각 단계마다 총 수령액의 1/2씩 받고, 잔여금은 1등상에게로 모아줍니다.
    2. 1등이 없는 경우 2등이 1등상+2등상 배분하여 수령하게 됩니다.
    3. 4개 선택시 각각, 56.25%, 25%, 12.5%, 6.25%를 나눠가집니다.
    4. 정답자가 전혀 없으면 포인트를 환불합니다.

(2022-03-17) 커밋목록

주요 변경점

  1. 내부 코드를 재정비했습니다.
  2. 게임 플레이 흐름을 바꾸는 밸런스 조절을 수행했습니다.
  3. 은퇴 커맨드가 추가되었습니다.
    1. 60세 이상의 경우, 2턴을 소모하여 사전 은퇴를 할 수 있습니다.

엔진 변경점

  1. API 호출 시 path를 api.php?path= 방식으로 변경하였습니다.
  2. phpunit, mocha(chai) 유닛 테스트 라이브러리를 추가하였습니다.
    1. 이후 작성되는 코드에 활용됩니다.
  3. 시나리오에서 NPC 추방, 몰수, 고유메시지 출력 빈도를 조절할 수 있는 옵션을 추가하였습니다.
  4. 원본 코드에서 PHP 라이브러리(vendor)는 설치 과정에서 별도로 다운받도록 수정하였습니다.
  5. 코드 업데이트 과정에서 npm, composer는 lock 파일 기준으로 패키지를 설치하도록 변경합니다.
    1. 저장소 코드의 용량을 대폭 절감했습니다.
  6. 해시 기반 간이 난수 생성기를 추가했습니다.
    1. 암호학적으로 안전한 난수 생성기입니다.
    2. 시드값을 지정하여 특정 상황에서 의도된(고정된) 난수값을 생성할 수 있습니다.
    3. 유닛 테스트를 사용하는 첫 기능입니다.
    4. 이후 게임 전반에 적용될 예정입니다.
  7. 모든 국가의 임관 설정을 임의 설정하는 이벤트 액션을 추가했습니다.
  8. 메인 페이지에서 이미 게임에선 표기되던 일부 변수가 JavaScript로 노출됩니다.
    1. 서버 영어 별명
    2. 서버 깃수
    3. 서버 실행 시간
    4. 토너먼트, 베팅 진행 상황
  9. 서버 초기화 관련 SQL을 수정했습니다.
    1. json 필드의 경우 json_valid를 확실하게 검사하고, 대소문자를 구분합니다.
    2. KVStorage의 key 필드도 대소문자를 구분합니다.

밸런스 수정

  1. 정란의 상성 상 공격력을 상승시켰습니다. (약 1.44배)
    1. 돌격 전투특기 사용시 지속 전투 효과를 적용할 수 있습니다.
  2. 차병종의 비용을 낮췄습니다.
    1. 정란 - 15 → 14
    2. 충차 - 20 → 18
    3. 벽력거 - 25 → 18
    4. 목우 - 30 → 18

수정된 버그

  1. v0.28 기준
    1. 연감이 제대로 표기되지 않는 버그를 수정했습니다.
    2. 도기 유니크를 판매할 수 없는 버그를 수정했습니다.
    3. 무상성으로 변경된 벽력거가 반대로 백이병 상대로는 유리하게 동작하는 버그를 수정했습니다.
  2. v0.26 기준
    1. 카카오로그인 사용시 자동 로그인 관련 관리자 로그가 제대로 남지 않는 버그를 수정했습니다.
    2. WebUI를 이용하여 설치할 수 없던 버그를 수정했습니다.
      1. 최근에는 Docker를 이용한 설치방법만 테스트하고 있어 놓쳤습니다.
  3. v0.20 기준
    1. 물자원조, 천도 턴이 잘못 구성된 경우 에러가 아니라 서버가 정지하는 버그를 수정했습니다.
  4. 62che 기준
    1. 최신 MariaDB와 호환되지 않는 DB SQL 커맨드를 사용하고 있던 버그를 수정했습니다.

기타 변경점

  1. 유저무쌍 멀티 유니버스 시나리오를 추가합니다.
    1. NPC들의 스탯이 반대로 기록된 시나리오입니다.
  2. 깃수 진행 중 천하통일국이 결정된 경우, 자동으로 임관 금지가 설정됩니다.
    1. 군주와 수뇌가 원하면 임관 금지를 해제할 수 있습니다.
  3. 유저장이 3회 모병 분의 금과 3회 전멸 분의 쌀을 가지고 있는 경우, 자동 금쌀매매를 하지 않고 다른턴을 수행하도록 변경합니다.
  4. 토너먼트에 참가할 수 있거나, 토너먼트 베팅이 열린 경우 버튼이 다르게 표기됩니다.

(2022-02-24) 커밋목록

주요 변경점

  1. 천하를 통일할 국가가 어떤 국가인지 맞추는 '유산 포인트' 베팅을 추가했습니다.
    1. 특정 시점(181년, 국가 수가 줄어든 경우)에 천통국 예측 베팅이 열립니다.
    2. 참여를 유도하기 위해 각 베팅이벤트마다 기본 포상 1천 포인트가 제공됩니다.
    3. 이를 위해 내부 베팅 코드가 새롭게 준비되었습니다.
  2. 게임 내부 밸런스를 조절했습니다.
  3. 기존의 명마, 무기, 서적에 더해 도구에도 유니크를 새롭게 개편했습니다.
  4. 일반 소비형 아이템의 효과를 변경했습니다.
  5. '많은' 버그를 수정했습니다.
  6. 이후 게임 진행을 다양하게 바꿀 수 있도록 각종 trigger, event 처리기 구조를 개선했습니다.

엔진 변경점

  1. 새롭게 베팅을 처리하는 코드를 추가합니다.
    1. 베팅 종류에 따라 유산 포인트(유저ID 기반), 금(장수ID기반)을 걸도록 할 수 있도록 설계하였습니다.
    2. 베팅 옵션으로 후보군 중 1개, 후보군 중 n개, 후보군 중 가급적 많이, 세가지 방식을 지원합니다.
  2. 내부 게임 이벤트 처리기를 대폭 변경합니다.
    1. 발동 단위로써 국가 멸망 시, 도시 점령 시 옵션을 추가합니다.
    2. 조건으로 '남은 국가 수'를 추가합니다.
    3. 우선순위를 추가합니다. 같은 발동 단위인 경우 높은 우선순위를 가진 이벤트부터 평가합니다.
    4. 베팅을 여는 Action을 추가합니다.
  3. 내부 알림(toast) 처리로 CoreUI를 혼용하던 방식에서 bootstrap-vue-3로 일원화했습니다.
  4. 계략 커맨드 방어 효율을 보정하는 trigger를 추가합니다.
  5. 임의 행동에 대응할 수 있도록 하는 trigger를 추가합니다.
    1. 현재는 장비 구입 및 판매에만 적용되었습니다.

밸런스 수정

  1. 천지비급 시나리오를 일부 변경합니다.
    1. 천지비급 시나리오에서 183년 이전엔 항상 상인이 등장합니다.
    2. 천지비급 시나리오에서 '견고' 전투 특기와 '견고' 비급이 허용됩니다.
  2. 벽력거가 완벽하게 무상성 병종으로 동작하도록 변경합니다.
    1. 기존에는 정란과 충차보다는 무상성에 가까웠지만 여전히 일반 병종보다는 약했습니다.
  3. 도구 유니크를 개편했습니다.
    1. 정력견혈산(의술): [군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복, [전투] 페이즈마다 40% 확률로 치료 발동(아군 피해 1/3 감소, 부상 회복)
    2. 청낭서(의술): [군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복, [전투] 페이즈마다 40% 확률로 치료 발동(아군 피해 1/3 감소, 부상 회복)
    3. 태평청령(의술): [군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복, [전투] 페이즈마다 40% 확률로 치료 발동(아군 피해 1/3 감소, 부상 회복)
    4. 상한잡병론(의술): [군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복, [전투] 페이즈마다 40% 확률로 치료 발동(아군 피해 1/3 감소, 부상 회복)
    5. 도기(보물): [개인] 판매 시 국고에 금, 쌀 중 하나를 추가 (+10,000, 5년마다 +10,000)
    6. 주판(조달): [내정] 물자조달 성공 확률 +20%p, 물자조달 획득량 +100%p
    7. 납금박산로(내정): [내정] 내정 성공률 +20%p
    8. 평만지장도(전략): [전략] 국가전략 사용시 재사용 대기 기간 -15%
    9. 동작(숙련): 숙련 +15%
    10. 구석(명성): 명성 +15%
    11. 오악진형도(척사): [전투] 지역·도시 병종 상대로 대미지 +15%, 아군 피해 -15%
    12. 구정신단경(격노): [전투] 상대방 필살 시 격노(필살) 발동, 회피 시도시 25% 확률로 격노 발동, 공격 시 일정 확률로 진노(1페이즈 추가)
    13. 낙주(징병): [군사] 징·모병비 -50%, 통솔 순수 능력치 보정 +15%
    14. 매화수전(저격): [전투] 새로운 상대와 전투 시 50% 확률로 저격 발동, 성공 시 사기+20
    15. 비도(저격): [전투] 새로운 상대와 전투 시 50% 확률로 저격 발동, 성공 시 사기+20
    16. 조목삭(위압): [전투] 첫 페이즈 위압 발동(적 공격, 회피 불가, 사기 5 감소)
    17. 묵자(공성): [전투] 성벽 공격 시 대미지 +50%
    18. 전국책(집중): [전투] 계략 성공 시 대미지 +30%
    19. 논어집해(환술): [전투] 계략 성공 확률 +10%p, 계략 성공 시 대미지 +20%
    20. 박혁론(반계저지): [전투] 상대의 계략 되돌림 불가
    21. 태현청생부(부적): [전투] 저격 불가, 부상 없음
    22. 삼황내문(저지): [전투] 수비 시 첫 페이즈 저지, 50% 확률로 2 페이즈 저지
    23. 서촉지형도(행동): [전투] 공격 시 페이즈 + 2
    24. 노군입산부(간파): [전투] 상대 회피 확률 -30%p, 상대 필살 확률 -10%p
    25. 상편(불굴): [전투] 남은 병력이 적을수록 공격력 증가. 최대 +50%
    26. 옥벽(약탈): [전투] 새로운 상대와 전투 시 20% 확률로 상대 금, 쌀 10% 약탈
    27. 주서음부(농성): [계략] 장수 주둔 도시 화계·탈취·파괴·선동 : 성공률 -30%p, [전투] 상대 계략 시도 확률 -10%p, 상대 계략 성공 확률 -10%p
    28. 위공자병법(농성): [계략] 장수 주둔 도시 화계·탈취·파괴·선동 : 성공률 -30%p, [전투] 상대 계략 시도 확률 -10%p, 상대 계략 성공 확률 -10%p
    29. 육도(계략): [계략] 화계·탈취·파괴·선동 : 성공률 +20%p, [전투] 계략 시도 확률 +10%p, 계략 성공 확률 +10%p
    30. 삼략(계략): [계략] 화계·탈취·파괴·선동 : 성공률 +20%p, [전투] 계략 시도 확률 +10%p, 계략 성공 확률 +10%p
    31. 과실주(상성): [전투] 유리한 병종 전투시 공격력 +10%, 피해 -10%
    32. 이강주(지력): [능력치] 지력 +5 +(5년마다 +1)
    33. 두강주(무력): [능력치] 무력 +5 +(5년마다 +1)
    34. 보령압주(통솔): [능력치] 통솔 +5 +(5년마다 +1)
    35. 철벽서(훈련): [전투] 훈련 보정 +15
    36. 단결도(훈련): [전투] 훈련 보정 +15
    37. 춘화첩(사기): [전투] 사기 보정 +15
    38. 초선화(사기): [전투] 사기 보정 +15
    39. 태평요술(회피): [전투] 회피 확률 +20%p
    40. 둔갑천서(필살): [전투] 필살 확률 +25%p
  4. 소비 아이템의 효과를 개편했습니다.
    1. 환약을 기존의 1회용 아이템에서 3회용 아이템으로 개편했습니다.
    2. 수극(저격)을 50%확률에서 100%확률로 변경했습니다.
    3. 탁주(사기)가 사기를 30 올리도록 변경했습니다.
    4. 청주(훈련)이 훈련을 40 올리도록 변경했습니다.
  5. 유니크 숫자가 부족한 장수가 유니크를 얻을 확률을 올렸습니다.
    1. 또한 유니크를 많이 가진 장수가 유니크를 추가로 얻을 확률은 낮췄습니다.
    2. 일반 행동 뿐만 아니라 작위 보상에도 적용됩니다.

수정된 버그

  1. v0.27 기준
    1. 내무부에서 기밀 제한 변경 옵션이 실제로는 지급률을 변경하는 버그를 수정했습니다.
    2. 내 정보란의 이전 로그가 가끔 순서대로 정렬되지 않는 버그를 수정했습니다.
    3. 턴 세부 선택시 통/무/지가 제대로 표시되지 않는 버그를 수정했습니다.
  2. v0.25 기준
    1. 태수국(U장)만 있는 경우, 초반 NPC 생성에서 서버가 멈추는 버그를 수정했습니다.
  3. v0.24 기준
    1. 장수 생성시 총 능력치보다 미달할 때 경고하던 기능이 사라졌던 버그를 수정했습니다.
  4. v0.20 기준
    1. NPC의 자동 지급률 설정에서 부대장 관련 지급을 잘못 설정하는 버그를 수정했습니다.
    2. 시나리오 모드에서 시작시접과 봉급월이 겹치는 경우 멈추는 버그를 수정했습니다.
    3. 피장파장이 대상 전략의 쿨타임을 60턴을 증가시키지 않고, 60턴으로 고정하는 버그를 수정했습니다.
    4. 대인 전투 후 성벽과 전투하는 경우에는 대인 사살이 증가하지 않는 버그를 수정했습니다.
  5. HiDCHe 초기
    1. 토너먼트 참가 시점과 장수가 사망하는 시점이 겹치는 경우 토너먼트에 이상이 발생해 이후 서버가 멈추는 버그를 수정했습니다.

기타 변경점

  1. 이민족 모드에서 한 이민족 국가가 멸망하면 다른 이민족 국가로 임관하도록 변경했습니다.
  2. 이벤트 시나리오 '대리전'을 추가했습니다.
    1. 사전 설정된 NPC 군주에 랜덤 임관하여 진행하도록 설계되었습니다.
  3. 세력 일람에서 '삭제턴 유저'의 기준으로 자동수행턴을 반영하도록 변경했습니다.
  4. NPC의 색상을 타입에 따라 변경합니다. 구형 코드 문제로 모든 곳에 반영되진 않았습니다.
    1. 일반 NPC(N,M): cyan
    2. 의병(G) deepskyblue
    3. 부대장(ㅂ): darkcyan
    4. (머리 수 채우는)보조 NPC: mediumaquamarine
  5. 메인페이지에 토너먼트 개최기간을 보여줍니다.
  6. 세력도 페이지를 제거하고 연감에 (현재)라는 항목으로 통합했습니다.

(2022-01-05) 커밋목록

주요 변경점

  1. 내무부 페이지를 500px 모드로 작성했습니다.
    1. 세율, 지급율 값을 즉시 알 수 있습니다.
  2. 유니크 명마, 명검, 서적 갯수를 2배로 늘렸습니다.

엔진 변경점

  1. 전투시 소모하는 군량 보정을 위한 trigger를 추가했습니다.
  2. 프론트엔드에서 API 호출 경로를 일부 변경했습니다.
  3. 빌드 환경을 정비했습니다.

밸런스 수정

  1. 유니크 명마, 명검, 서적 갯수를 2배로 늘렸습니다.
    1. 종류마다 2개씩 수를 늘렸으며, 이미 2개인 것은 새로운 종류를 추가했습니다.
    2. 이에 따라 말 유니크로 백상, 오환마, 흉노마, 의남백마, 옥추마, 화종마, 옥란백용구를 추가하며, 두 유니크에는 특수효과를 부여합니다.
      1. 옥란백용구: 남은 병력에 따라 회피 확률 증가. 최대 +30%p
      2. 백상: 공격력 +20%, 소모 군량 +10%, 공격 시 페이즈 -1
  2. 유산 포인트를 이용해 유니크 아이템을 입찰할 경우, 그 아이템을 랜덤 유니크 획득으론 얻을 수 없게 잠급니다.
  3. 토너먼트 베팅 난이도를 조금 쉽게 변경했습니다.
  4. 초반 자동 생성되는 NPC국(U국)에서 유저와 거리를 4칸에서 3칸으로 줄입니다.
    1. 조금 더 많은 NPC국이 생성됩니다.

수정된 버그

  1. v0.27.1 기준
    1. 사령턴, 일반턴 내부 호출 순서가 거꾸로 된 버그를 수정했습니다.
  2. v0.27 기준
    1. 국가를 대상으로 하는 커맨드에서 가능한데도 무조건 불가능하다고 뜨는 버그를 수정했습니다.
    2. 유니크 아이템에서 저격 효과 표기를 정정합니다.
  3. v0.25 기준
    1. 빙의장이 지정 임관이 불가능한 버그를 수정했습니다.
    2. 자동 사령턴 옵션이 활동화되지 않은 모드에서, 내정보 & 설정을 변경할 수 없는 버그를 수정했습니다.
  4. v0.20 기준
    1. 급습 사용시 상대국에 알림이 뜨지 않는 버그를 수정했습니다.
    2. 비급 모드에서 격노를 중첩한 경우 격노 발동시 무조건 2번 격노하는 버그를 수정했습니다.

기타 변경점

  1. 턴 선택기에서 '드래그'를 지원합니다.
    1. 턴 선택부, 연월 선택부(사령부는 시간)에서 드래그를 할 수 있습니다.
    2. 터치, 마우스 둘다 지원합니다.

(2021-12-26) 커밋목록

주요 변경점

  1. 턴 선택 세부 페이지를 500px 모드로 재 설계하였습니다.
    1. 장수명, 국가명, 도시명 초성 검색이 가능해집니다.
    2. 징병 페이지가 특히 다릅니다.
  2. 사령부 페이지를 500px 모드로 재 설계하였습니다.
    1. 턴 선택기가 메인페이지의 턴 선택기와 동일해졌습니다.

엔진 변경점

  1. 턴 선택에 필요한 processing 페이지를 vue3로 재 작성하였습니다.
    1. 현재 jQuery로 동작하는 map은 단순히 wrapping한 상태입니다.
  2. 사령부 페이지를 vue3로 재 작성하였습니다.
  3. General::getRankVar에서 값이 없을 경우 기본값을 가져오는 기능을 추가합니다.
  4. 사령턴 커맨드용 API를 장수 커맨드용 API와 호출 규격을 통일하였습니다.
  5. tyepscript 내 API 호출 규격에서 에러가 나더라도 정상 동작하는 호출 방식을 추가합니다.

밸런스 수정

수정된 버그

  1. v0.27 기준
    1. 토너먼그 진행 도중에 빙의한 장수로 인해 게임이 중단되는 버그를 수정했습니다.
  2. v0.20 기준
    1. 같은 장수를 빠르게 여러번 추방하면, 해당 월 내에 장수 10명 제한을 넘길 수 있는 버그를 수정했습니다.

기타 변경점

  1. 이제 사용하지 않는 기존 파일들을 대령 제거했습니다.
  2. 내 도시를 표기하는 부분에 애니메이션을 넣어 '더 신경쓰이게' 변경했습니다

(2021-12-16) 커밋목록

주요 변경점

  1. NPC가 매 베팅에 참여하는 금액이 점차 증가합니다.
    1. 3년마다 10금씩 증가합니다.
    2. 보병이 수비할 경우 출병 대비 피해를 5% 덜 받습니다.
  2. NPC 출병은 막고, 유저만 출병 가능하게 하는 각종 조작을 막습니다.
    1. NPC 정책에서 '출병'을 '일반 내정'보다 뒤로 둘 수 없습니다.
  3. 전쟁 금지/허용 제한을 다시 추가합니다.
    1. 매 달마다 2회씩 리필되며, 최대 충전 횟수는 10회입니다.
  4. 숙련도 획득 수식을 크게 변경합니다.
  5. 메인 페이지를 반응형으로 재 설계했습니다.
    1. 500px 모드(스마트폰), 1000px 모드(데스크탑, 태블릿)로 나눠 구분합니다.
      1. device width에 따라 두 모드를 동적 조절합니다.
    2. 500px 모드에서 페이지가 위아래로 길기 때문에 하단 메뉴를 제공합니다.
    3. 500px/1000px 모드는 내 정보/설정 페이지에서 변경 가능합니다.
  6. 턴 선택기를 vue3로 재작성했습니다.
    1. 턴 선택, 명령 선택을 비교적 가까운 위치에 재배치합니다.
      1. 숫자(턴)을 누르는 것으로 토글, 연/월을 누르는 것으로 단일 선택이 가능합니다.
    2. 당기기, 미루기, 반복, 전체선택 등을 UX를 고려하여 재구성합니다.
    3. 턴 선택 시 검색이 가능합니다.
      1. 초성검색(띄어쓰기 없이)도 가능합니다.
      2. 초성에 해당하는 알파벳도 입력하여 검색할 수 있습니다.
      3. 검색 기능을 켜고 끌 수 있습니다.
  7. 내 정보/설정 페이지를 반응형으로 재 설계했습니다.
    1. 리 디자인은 아니며, 500px 모드를 추가한 변경입니다.
  8. 빙의모드에서 빙의장도 유산포인트를 얻을 수 있도록 변경합니다.
    1. 깃수 종료 시점에 빙의중이어야 하며, 전체 기간 중 반 이상을 플레이해야 합니다.

엔진 변경점

  1. 버전 표기 뒷 부분에 branch를 같이 표기합니다.
  2. 기존 bootstrap4 코드들을 제거하고 bootstrap5로 일원화합니다.
  3. KVStorage에서 내부 캐시 모드 기본값을 끔 → 켬으로 변경합니다.
  4. lock Table에서 종류별 DB 락을 걸 수 있도록 수정합니다.
  5. js/css 빌드 결과물 구조를 변경합니다.
    1. 출력 디렉토리: /dist_js/버전명/{vue,ts}/
    2. Vue 파일: vendors.js/css, common_ts.js/css, v_모듈명.js/css
    3. 일반 ts 파일: vendors.js/css, common_ts.js/css, 모듈명.js/css

밸런스 수정

  1. 수비자의 획득 숙련도를 대폭 낮춥니다.
    1. 본인 병종 = 사살량 * 0.9 ⇒ 사살량 * 0.8
    2. 상대 병종 = 피살량 * 0.9 ⇒ 0.1
  2. 랜덤 임관 확률이 유저장에게 덜 가혹하도록 완화됩니다.
  3. 성도 특성 보병 병종 '백이병'을 추가합니다.
    1. 공방이 균형잡힌 보병 병종입니다.
    2. 일반 보병보다 궁병에게 상성 이득이 적지만, 기병에게 상성 손해도 적습니다.
  4. 궁병 병종의 회피 확률을 5%p 씩 낮춥니다.
  5. 유산 포인트로 유니크를 얻을 때 5개월째부터 얻을 수 있도록 변경합니다.
  6. 토너먼트에 자동 참여되는 장수들은 가급적 스탯이 낮지 않게 참여하도록 변경합니다.
  7. NPC국이 전쟁 중 접경이 사라졌을 때 바로 '통상' 상태로 변경하지 않도록 변경합니다.
    1. 접경이 사라진 이후 5개월동안 대기합니다.
  8. 전투 특기 일부를 수정합니다.
    1. 견고
      1. 저격을 받을 수 있도록 변경됩니다.
        1. 부상을 입지는 않습니다.
      2. 필살을 받을 수 있게 변경됩니다.
        1. 상대방의 필살 확률이 20%p 낮아집니다.
        2. 체섭의 경우, 일반 무장(무력 90 기준)의 필살 확률이 12.5%이므로 여전히 필살을 사용할 순 없습니다.
    2. 저격
      1. 저격 성공 시 사기 상승량이 +10에서 +20으로 늘어납니다.
      2. 성벽에게도 저격을 사용할 수 있게 변경됩니다.
        1. 성벽이 '부상'을 입진 않습니다.
    3. 척사
      1. 특수 병종 상대시 보정을 공격력 +15%p, 방어력 -15%p에서 공격력 +20%p, 방어력 -20%p로 강화합니다.

수정된 버그

  1. v0.25 기준
    1. 빙의를 할 수 없는 버그를 수정했습니다.
  2. v0.20 기준
    1. '최소 전투 가능 병력 수'를 매우 높여 출병 금지가 가능한 문제를 수정합니다.
    2. '훈련/사기진작 목표치'를 매우 높여 출병 금지가 가능한 문제를 수정합니다.
    3. 권한 없는 유저가 외교 메시지 등 특수 메시지를 수락할 경우 메시지가 아예 사라지는 버그를 수정했습니다.
    4. 관리자 패널에서 이미 삭제된 '폐쇄중 로그인' 기능을 실제로 UI에서 제거합니다.
    5. 유저 내정장 포상 시, 최소 금쌀에 쟁장에게 필요한 최소 징병 금쌀 값이 섞여서 계산되는 버그를 수정했습니다.
    6. 위압 비급이 실제 위압 전투특기와 다르게 동작하는 버그를 수정했습니다.
  3. 기타
    1. webp 업로드가 지원되었으나, 아이콘 업로드 과정에서 webp 확장자가 기본 표기되지 않는 버그를 수정했습니다.
    2. 등용장 수락이 되지 않는 버그를 수정했습니다.

기타 변경점

  1. 버튼 외형 변경을 진행합니다.
  2. 기본 글꼴을 나눔 고딕 + 맑은 고딕 2중 구조에서 Pretendard로 변경합니다.
    1. 글꼴의 가로폭이 이전보다 좁아, 기본 글꼴 크기를 13px→14px로 올렸습니다.
  3. 국가방침/임관 권유문에 사용하는 에디터를 Summernote에서 Tiptap으로 변경했습니다.
    1. 급하게 투입되어서 기능은 이후에 보완할 예정입니다.
  4. 상/하단 돌아가기 버튼을 변경합니다.
  5. 애니집결 시나리오를 갱신했습니다.

커밋목록

(2021-11-16)

주요 변경점

  1. 대규모 밸런스 수정
  2. 각종 동작 변경
  3. 토너먼트에서 베팅이 시작될 때 모든 NPC가 16강 진출자 중 한명에게 임의로 금 10씩 베팅합니다.
    1. 베팅이 시작되었음을 알리는 공지도 띄웁니다.
  4. 유산 포인트 중 '상성 전투'를 '능동 행동'으로 변경합니다.
    1. 아래의 행동을 할 경우 3포인트를 부여합니다.
      1. 거병, 건국, 방량, 선양, 모반
      2. 임관, 랜덤임관, 장수대상임관, 등용수락, 하야
      3. 출병(500명 이상, 훈사 7070 초과)
      4. 인재탐색 성공(난도에 따라 추가 보정)
      5. 첩보(예외, 0.5)
      6. 증축, 감축, 국기변경, 국호변경, 천도성공
  5. 국고가 2000보다 아래일 경우 사실 상 물자조달만 하던 로직을 보완합니다.
    1. 국고가 2000보다 아래일 경우 다음 커맨드의 실행 확률이 감소하여, 최종적으로 물자조달을 수행하게 될 확률을 높이는 형태로 동작합니다.
      1. 출병: 30% 확률로 출병
      2. 전투내정: 70% 확률로 내정
      3. 일반내정: 70% 확률로 내정

엔진 변경점

밸런스 수정

  1. 종횡가 전략 감소 효과를 1/2에서 3/4으로 약화합니다.
    1. 글로벌 쿨은 유지합니다.
  2. 피장파장 후딜레이를 최소 72턴으로 변경합니다.
  3. 반계 효과를 가진 유니크들의 '반계 시도 확률'을 반으로 줄입니다.
  4. 수비자가 적을 전멸할 경우 증가하는 사기를 반으로 줄입니다.
  5. 기간별 최대 유니크 획득 수를 변경합니다.
    1. 180년 서버 오픈을 기준으로 다음과 같이 제한이 변경됩니다.
      1. 오픈 직후: 1개
      2. 183년부터: 2개
      3. 190년부터: 3개
      4. 200년부터: 4개
    2. 작위 보상또한 위 기준에 따릅니다.
    3. 유니크 획득 제한에 걸린 경우 유산 포인트 구매가 이루어지지 않습니다.
      1. 무작위 유니크 구매의 경우 다음 턴에 바로 환불됩니다.
      2. 지정 유니크 구매의 경우 유니크 제한이 풀릴때까지 대기합니다.
        1. 다른 유저가 더 높은 포인트로 입찰하거나, 다른 유저가 그 유니크를 얻으면 다음 턴에 환불됩니다.
  6. 랜덤임관 로직에 전투력과 내정능력을 상세하게 반영합니다.
    1. 의병장, 집합장을 제외한 모든 장수들의 전투력 + 내정능력 만큼을 랜덤 임관 로직에서 사용합니다.
    2. 전투력: 대인살상률 * 유저장계수(유저:1.5, NPC:1) * 순수통솔
    3. 내정능력: (sqrt(무력*지력) + 통솔/2)/5
  7. 국력 계산 식중 장수 능력치 총합 부을 랜덤임관 로직에 사용하는 것과 동일하게 적용합니다.
  8. 유산 포인트로 요구하는 포인트를 줄였습니다.
    1. 천재(전투 특기 보유 생성): 12000 → 6000
    2. 임의 전투 특기: 5000 → 4000
    3. 히든 버프: [250, 750, 1500, 2500, 3750] → [200, 600, 1200, 2000, 3000]

수정된 버그

  1. v0.26 기준
    1. 자동로그인 토큰 연장 시 다른 유저 토큰을 받는 버그를 수정했습니다.
      1. 이로인해 현재 DB에 저장된 모든 토큰을 리셋했습니다.
  2. v0.22 기준
    1. 잦은 서버 중단을 일으키던 기능을 비활성화했습니다.
      1. 대신 서버가 살짝 느려지는 것으로 보완했습니다.
  3. v0.20 기준
    1. 자율행동턴 시간 제한이 동작하지 않는 버그를 수정했습니다.
      1. 몇분으로 설정하여도 사망 직전까지 동작했었습니다.

기타 변경점

  1. 자율행동턴이 진행중인 경우 예약 턴 페이지에 진행중임을 알리는 푸른색 표기를 추가하였습니다.
    1. 마우스를 올리거나 탭할 경우 언제 자율행동이 끝나는지 알려줍니다.
  2. NPC가 거병 및 거병 후 이동을 지능적으로 수행합니다.
    1. 근처 거병할 도시가 있을 때에만 거병합니다.
    2. 거병 후 이동할 경우, 건국하려는 도시를 선택한 후 그 도시를 향해 이동합니다.
      1. 목표한 도시가 이미 건국되거나, 다른 군주가 도착한 경우 다른 목표를 찾습니다.
    3. 만약 가까운 거리에 건국할 수 있는 도시가 없다면 해산합니다.
  3. NPC 정책에서 최대 포상 한도를 추가합니다.
  4. 토너먼트 순서를 매 다섯 대회마다 전력전 2회, 통솔전 1회, 일기토 1회, 설정 1회가 이루어지도록 합니다.
    1. 내부적으로는 다섯 대회의 순서를 정한다음, 다섯 대회가 끝나면 다시 새로운 순서를 만드는 형태로 동작합니다.

커밋목록

(2021-11-08)

주요 변경점

  1. 자동 로그인을 추가했습니다.
    1. 한번 로그인하면 7일간 로그인을 유지합니다.
    2. 페이지가 정확히 유지되는 방식은 아니며, 내부적으론 로그아웃 후, 재 로그인하는 구조입니다.
  2. 버그 수정
  3. 무쌍 약화

엔진 변경점

  1. 자동 로그인을 위한 시스템을 추가 구현했습니다.
    1. localStorage에 로그인 토큰을 저장합니다.
    2. 실제 로그인은 토큰과 nonce의 sha512 해시값을 대조합니다.

밸런스 수정

  1. 무쌍과 무쌍 비급을 동시 적용하지 못하도록 변경합니다.
  2. 무쌍의 중후반을 대폭 약화합니다.
    1. 승리 수의 정비례가 아니라, 로그 비례(2배 증가 기준)로 적용합니다.

수정된 버그

  1. v0.20 기준
    1. 서버가 닫힌 경우 메인 페이지로 리다이렉트되지 않는 버그를 수정합니다.

기타 변경점

  1. 장비구매 시 유니크 도구를 가지고 있으면 도구 구매가 되지 않도록 변경합니다.

커밋목록

(2021-10-14)

주요 변경점

  1. 버그 수정
  2. 밸런스 수정

엔진 변경점

  1. sass-loader 대신 esbuild-loader를 적용했습니다.
  2. DB 시스템에 MeekroDB와 Illuminate(ORM)을 선택해서 사용할 수 있도록 기본 코드를 변경했습니다.

밸런스 수정

  1. 무쌍의 최대 공격력은 높이고, 최대 방어력은 낮추었습니다.
  2. NPC 정책에서 출병을 비활성화 할 수 없도록 수정했습니다.
    1. 출병을 지연시키는 것을 할 수는 있으나, 아예 출병을 막으려면 내무부 메뉴를 통해 출병을 금지해야합니다.
  3. 탈취 계략시 탈취량을 도시 내정치에 기반하도록 변경합니다.
    1. 탈최 최대량이 약 10%가량 상승합니다.(버그로 잘못 동작. 유지 여부는 고려 중)
    2. 탈취 최대량이 약 45%가량 줄어듭니다.
    3. 치안 100% 대비 치안이 0%이면 절반의 탈취량을 갖습니다.
  4. 초반 NPC 생성 시 모든 국가를 채울 수 있을 정도로 생성하도록 변경합니다.

수정된 버그

  1. v0.25 기준
    1. 명예의 전당에서 시즌별 검색이 불가능한 버그를 수정했습니다.
    2. 내 정보 & 설정에서 자동 사령턴을 켜고 끄는 것이 불가능한 버그를 수정했습니다.
  2. v0.21 기준
    1. 인재 탐색, 의병 고용시 숙련도가 정상 지정되지 않는 버그를 수정했습니다.
    2. 랜임 시 의병장, 집합장 카운트가 제대로 제외되지 않는 버그를 수정했습니다.
  3. v0.20 기준
    1. 피장파장 커맨드가 내부 에러를 계속해서 남기는 버그를 수정했습니다.
    2. 수뇌 공격력 보정 식에 문법 문제를 수정했습니다. 실제 공격력 문제는 없습니다.
    3. 에러 발생 시 제대로 로그가 남지 않는 버그를 수정했습니다.
    4. 전투 중 “상대가 치료했다!” 메시지가 녹색으로 나와 아군에게 유리한 것처럼 보이는 버그를 수정했습니다.
    5. 새 탭으로 뜨는 화면 중, 내용물이 바뀌면 닫히지 않는 버그를 수정했습니다.

기타 변경점

커밋목록

(2021-09-21)

주요 변경점

  1. 일부 엔진 코드 수정
  2. 버그 수정

엔진 변경점

  1. sass-loader 대신 esbuild-loader를 적용했습니다.
  2. DB 시스템에 MeekroDB와 Illuminate(ORM)을 선택해서 사용할 수 있도록 기본 코드를 변경했습니다.

밸런스 수정

수정된 버그

  1. v0.20 기준
    1. 명예의 전당에서 시즌별 검색이 불가능한 버그를 수정했습니다.
    2. 내 정보 & 설정에서 자동 사령턴을 켜고 끄는 것이 불가능한 버그를 수정했습니다.

기타 변경점

  1. 쿠키런 킹덤 시나리오를 임시 구현했습니다.

커밋목록

(2021-09-18)

주요 변경점

  1. 버그를 수정했습니다.
  2. 유산 포인트 사용 시스템을 일부 정비했습니다.

엔진 변경점

  1. 기본 event용 General 객체 생성 시 aux column도 같이 가져오도록 변경합니다.
  2. 유산 포인트 사용시 로그를 기록하도록 포함합니다.
  3. WebPack 빌드 속도를 개선했습니다. babel-loader 대신 esbuild-loader를 사용합니다.

밸런스 수정

  1. 설문조사를 통해 유산 포인트로 구입한 특정 유니크를 얻을 순 없도록 변경했습니다.
    1. 특정 유니크 구매는 항상 본인의 턴을 통해서만 얻을 수 있습니다.

수정된 버그

  1. v0.24 기준
    1. 유니크 환불을 할 경우 특정 턴에는 환불을 하지 않는 버그를 수정했습니다.
    2. 턴 초기화, 특기 초기화가 정상적으로 동작하지 않는 버그를 수정했습니다..
  2. v0.22 기준
    1. 유니크 활의 저격 계수가 설명과 다르게 기록되어 있는 버그를 수정했습니다.
    2. 반계와 관련한 '반계시도'이벤트가 중첩되지 않는 버그를 수정했습니다.
  3. v0.20 기준
    1. NPC 정책 페이지의 오타를 수정했습니다.

기타 변경점

  1. 랜덤 임관 시 임관 가능한 국가가 없을 때 '요양'을 실행하는 대신 '인재탐색'을 실행하도록 변경했습니다.

커밋목록

(2021-09-16)

주요 변경점

  1. 버그를 수정했습니다.
  2. 유산 포인트를 이용하여 장수 생성, 플레이 중에 부가효과를 얻을 수 있도록 하는 기능을 추가했습니다.
    1. 장수 생성 시 선택 가능한 항목
      1. 지정한 도시에 나타남: 1000
      2. 지정한 턴에 나타남: 3000
        1. 턴이 서버 시간보다 이전인 경우(1분을 지정했는데, 서버는 10분인 경우) 일반적인 경우와 같이 다음 달부터 턴이 실행됩니다.
      3. 추가 능력치를 원하는 대로 고정: 1000
        1. 일반 서버와 같이 3~5 포인트 중에서 원하는대로 배분할 수 있습니다.
      4. 지정한 특기의 천재로 태어남: 12000
        1. 선착순 3인만 가능합니다.
          1. 이 옵션을 사용했지만 이미 천재가 3명 있는 경우 포인트를 되돌려주고, 장수 생성을 취소합니다.
    2. 플레이 중 유산 관리 페이지에서 선택 가능한 항목
      1. 확률 증가 및 감소(1%p ~ 5%p) : 250, 750, 1500, 2500, 3750
        1. 회피 확률 증가
        2. 필살 확률 증가
        3. 전투시 계략 시도 확률 증가
          1. 무장도 계략을 시도하게 됩니다.
        4. 상대 회피 확률 감소
        5. 상대 필살 확률 감소
        6. 전투시 상대 계략 시도 확률 감소
        7. 내정 성공 확률 증가
        8. 내정 실패 확률 감소
      2. 동일 항목의 낮은 %를 구입한 상황에서 높은 %를 구매할 경우, 추가분만을 소모합니다.
      3. 전투 특기 획득 시 원하는 특기로 획득: 5000
        1. 전투 특기를 얻을 수 있는 연령이 되었을 경우 지정한 특기를 얻습니다.
      4. 즉시 전투 특기 초기화: 첫 1회에 1000, 이후부터 1000, 2000, 3000, 5000, …
        1. 피보나치 수열을 따릅니다.
        2. 일반적인 경우와 같이 다음해 1월에 전투 특기를 얻습니다.
        3. 기존에 '전투 특기 초기화'의 재사용대기 시간과는 무관하여, 늘어나지 않습니다.
      5. 즉시 랜덤 턴 변경(즉시) 첫 1회에 1000, 이후부터 1000, 2000, 3000, 5000, …
        1. 피보나치 수열을 따릅니다.
        2. 다음턴이 -30분 ~ 30분 범위 내에서 랜덤하게 바뀝니다.
        3. 만약 다음 턴까지 시간이 30분 보다 적게 남은 경우, 그 시간 범위 내에서 랜덤하게 바뀝니다.
        4. 20분 남은 경우 -20분 ~ 40분 사이에서 랜덤하게 변경
      6. 다음 행동 (임관, 내정, 전투, 설문조사)에서 랜덤한 유니크를 얻음: 3000
        1. 유니크를 갖고 있지 않은 빈 자리에 랜덤한 유니크를 얻습니다.
        2. 모든 유니크가 배정 되었거나, 4종류의 모든 유니크를 가지고 있는 경우에도 '환불되지 않습니다'
      7. 다음 행동 (임관, 내정, 전투, 설문조사)에서 원하는 유니크를 얻음: 5000 + 추가 입찰
        1. 경매의 형태로 유니크를 습득할 수 있습니다.
          1. 한번 입찰했다면, 본인의 입찰 결과가 나오기 전까지 그 아이템에 대해서는 상위 입찰 할 수 없습니다.
        2. 본인의 턴 실행차례에 해당 유니크에 가장 많은 포인트를 입찰한 경우 유니크를 얻을 수 있습니다.
          1. 공동 1등인 경우, 턴이 빠른 사람이 얻습니다.
          2. 이미 유니크를 가지고 있다 하더라도, 입찰해 성공했다면 덮어씌워집니다.
        3. 본인의 턴에 더 많은 포인트를 입찰한 다른 장수가 있었다면, 입찰한 포인트를 돌려줍니다.
          1. 환불 시점은 '본인의 턴'이 지났을 때입니다.
        4. 최 상위 입찰자가 누구인지는 알려주지 않으며, 대략적으로만 '개인 메시지'를 통해 알려줍니다.
          1. 아슬아슬한 차이로: 5% 이내
          2. (수식어 없음): 20% 이내
          3. 큰 차이로: 2배 이내
          4. 엄청난 차이로: 2배 초과
        5. 여러 아이템을 입찰할 경우에도 동시에 하나의 유니크만 얻을 수 있습니다.
          1. 획득을 시도하는 순서는 높은 포인트로 입찰한 아이템부터입니다.
        6. 입찰이 진행 중에도 입찰하지 않은 별도의 유저가 일반적인 절차(랜임, 설문조사 등)을 통해 그 유니크를 얻을 수는 있습니다.
          1. 이 경우에도 환불됩니다.

엔진 변경점

  1. 전투 상대방의 특정 수치를 접근할 수 있는 onCalcOpposeStat trigger를 추가했습니다.
    1. initWarPhase
    2. dex
    3. bonusTrain, bonusAtmos
    4. warAvoidRatio, warCriticalRatio
    5. warMagicTrialProb, warMagicSuccessProb, warMagicFailDamage
    6. 계략 약화도 이 기능을 이용해 처리하도록 변경합니다.
  2. 서버에서 유저단위 로깅을 남기기 위한 Table을 추가합니다.

밸런스 수정

수정된 버그

  1. v0.23 기준
    1. 내 정보 화면에서 이전 로그를 추가로 불러올 수 없는 버그를 수정했습니다.
    2. 서버 목록 창에서 추가정보가 툴팁으로 나타나지 않는 버그를 수정했습니다.
    3. 은퇴할 때 적용되어야 하는 코드가 항상 적용되어 유산 포인트가 적게 쌓이는 버그를 수정했습니다.
    4. 서버 리셋 시, 유산 포인트 적용이 이루어지지 않는 버그를 수정했습니다.
  2. v0.20 기준
    1. 수뇌가 소재 도시에 적용되는 사령턴(백성동원 등)을 실행 후 그 도시의 정보가 변하는 턴(수비강화 등)을 실행할 때 사령턴이 정상 적용되지 않는 버그를 수정했습니다.

기타 변경점

  1. 일부 페이지를 vue로 변환했습니다.
    1. 장수 생성 페이지
    2. 유산 관리 페이

점진적 신신엔진

커밋목록

(2021-09-09)

주요 변경점

  1. 내부 프론트엔드 스크립트 시스템을 레거시 JavaScript 기반에서 TypeScript + Vue.js로 변경합니다.
    1. 기존 레거시 코드도 유지하되, TypeScript로 변경했습니다.
    2. Internet Explorer 11 버전을 더 이상 지원하지 않습니다.
  2. 버그를 수정했습니다.

엔진 변경점

  1. TypeScript를 전면 도입했습니다.
    1. 기존의 모든 js를 모두 ts로 대체합니다.
    2. gateway와 ingame 두파트로 나뉘어 있습니다.
    3. jQuery의 ajax를 axios로 대체중입니다.
  2. WebPack을 전면 도입했습니다.
    1. `npm run build` `npm run watch` `npm run watchProd`가 주된 예상입니다.
    2. 업데이트 스크립트에 WebPack을 자동으로 실행합니다.
  3. 일부 페이지에 Vue3, scss, bootstrap 5를 도입중입니다.
  4. 타겟 PHP 버전을 PHP 8로 올렸습니다.

밸런스 수정

수정된 버그

  1. v0.22.0 기준
    1. 은퇴할 경우 깎이는 50%에 대한 숙련 포인트도 그대로 유산으로 얻는 버그를 수정했습니다.
  2. v0.21.0 기준
    1. 유니크, 전특의 효과가 중복되도록 설계했으나 그렇게 동작하지 않는 항목에 대한 버그를 수정했습니다.
  3. v0.20.0 기준
    1. m장과 의병장의 숙련이 설정되지 않는 버그를 수정했습니다.
    2. 모병/징병에서 통솔 계산이 제대로 이뤄지지 않는 버그를 수정했습니다.
    3. 허보 전략을 쓰면 성벽이 같이 줄어드는(수몰) 버그를 수정했습니다.

기타 변경점

  1. 로그인 게이트웨이의 지도 표기 방법을 변경합니다. 이제는 iframe 페이지입니다.

커밋목록

(2021-08-11)

주요 변경점

  1. 유산 포인트 시스템을 추가합니다.
    1. 깃수 내 플레이 성과에 따라 누적되는 포인트를 얻어, 특정 깃수에 포인트를 소모하여 효과를 얻을 수 있습니다.
    2. 첫번째 단계로 유산 포인트 획득 기능을 구현합니다.
    3. 얻을 수 있는 방법은 다음과 같습니다.
      1. 생존
      2. 최대 임관년 수
      3. 최대 연속 내정 성공
      4. 병종 상성 우위 횟수
      5. 전투 횟수
      6. 계략 성공 횟수
      7. 천통 기여(규모 상승, 천통 수뇌, 천통 군주)
      8. 숙련도
      9. 토너먼트
      10. 베팅 당첨
    4. 얻은 유산 포인트는 유산 관리 페이지를 통해 확인할 수 있습니다.
  2. 태수국 기능을 추가합니다.
    1. 181년 1월에 자동 생성되는 장수국입니다. u 마크를 달고 있습니다.
    2. 수명이 비교적 짧게 설정되어있어 서서히 사라지기 시작하며, 개시 후 25년이 지난뒤에는 거의 사라집니다.
    3. 유저국과는 4칸 거리이며, 태수국끼리는 2칸 거리를 둡니다.
    4. 유저장은 태수국에 임관할 수 없습니다.
  3. NPC가 군주인 곳에 원조할 경우 불가침을 제의합니다.
    1. 1년 세수만큼 받은 경우 24개월 불가침을 제안합니다
    2. 최소 6개월(1년 세수의 25%) 원조부터 반응합니다.
    3. 불가침을 받지 않고 추가 원조를 하면 계속해서 불가침을 제안하는 기간이 상승합니다.
    4. 대신 불가침 수락을 하기 전에 선포를 할 수 있으니 주의해야합니다.

엔진 변경점

  1. TypeScript 코드로 개발할 수 있도록 eslint, npm 환경을 추가합니다.
    1. 시범적으로 유산 관리 페이지에 사용합니다.
    2. 아직 빌드된 코드를 ignore하지 않고 빌드 결과물로 포함합니다.
  2. PHP 내부 라이브러리 버전을 최신버전으로 갱신습니다.
  3. 유산 포인트를 관리하기 위한 DB 테이블을 추가했습니다.

밸런스 수정

  1. m장은 거병하지 않도록 변경합니다.
  2. 작위 보상에서 군주와 참모가 유니크를 얻을 확률을 낮추었습니다. 비중으론 약 반절 가량입니다.

수정된 버그

  1. v0.21 기준
    1. 유니크 아이템의 스탯이 다른 보정 스탯을 무시하는 버그를 수정했습니다.
  2. v0.20 기준
    1. 유니크 아이템을 얻을 때 가끔 유니크 아이템이 아닌 '환약'을 얻게되는 버그를 수정했습니다.

기타 변경점

주요 변경점

  1. 많은 버그를 수정했습니다.
  2. 구 유기체(62che) 서버에 있던 이민족 출현 모드를 새로 구현했습니다.
    1. 강한 이민족, 약한 이민족을 선택할 수 있습니다.
      1. 숙련, 능력치, 기술등급 등에서 차이가 납니다.
    2. 이민족 도시가 특 규모 성보다 강하게 설정됩니다.
  3. 유니크를 중복으로 얻을 수 있게 수정했습니다.
  4. 아이템에 효과를 추가했습니다.
    1. 명마
      1. 페이즈 추가 (+7 기주마)
      2. 퇴각 시 부상 없음 (+7 백마, +12 사륜거)
    2. 무기
      1. 저격 확률 추가 (+2 단궁, +7 맥궁, +9 동호비궁, +11 이광궁, +13 양유기궁)
    3. 서적
      1. 계략 시도 확률 (+1 ~ +6 일반 서적, +7 위료자)
      2. 반계 (+7 사마법, +12 산해경)
      3. 성공 시 추가 대미지 (+8 전론)
      4. 상대 계략 성공 확률 약화 (+11 춘추전)

엔진 변경점

  1. (관리자) 서버 리셋 시 서버 부하를 일부 줄입니다.
  2. 효과로 '퇴각부상무효'를 추가합니다.

밸런스 수정

  1. 랜덤임관, 인재탐식 시 장수 수 기준에서 의병장을 제외합니다.(버그로 미동작)
  2. 초반에 등록되는 NPC의 수를 10명에서 30명으로 늘립니다.
  3. 유니크 아이템을 여러개 얻을 수 있도록 변경합니다.
    1. 최대로 얻을 수 있는 유니크 숫자는 일반맵의 경우 명마/무기/서적/도구로 총 4개입니다.
    2. 획득한 유니크 수가 늘어날 수록 유니크를 얻을 확률이 점차 낮아집니다.
  4. 무쌍 전특을 초반을 살짝 강하게 하고, 후반의 최대 강화치를 낮추었습니다.

수정된 버그

  1. v0.21 대비
    1. 장수 선택 모드에서 다른 유저의 정보를 보여주지 않는 버그를 수정했습니다.
  2. v0.20 대비
    1. 모반시도를 할 수 없는 버그를 수정했습니다.
    2. (관리자) 도시 정보가 보이지 않는 버그를 수정했습니다.
    3. 불가침 상태여도 선포 가능한 버그를 수정했습니다.
    4. 시나리오 모드에서 국가가 설정된 경우 시작되지 않는 버그를 수정했습니다.
      1. 군주가 정상적으로 지정되지 않았습니다.
      2. 장수의 스펙이 정상 지정되지 않았습니다.
    5. 빙의 해제할 경우 장수의 소유자가 '없음'이 아니라 '운영자'로 지정되는 버그를 수정했습니다.
    6. 가상 역사모드에서 군주가 사망할 때 후계자를 사실 모드를 따라가는 버그를 수정했습니다.
    7. 전투에서 성벽을 공격할 경우 성벽의 수비/성벽이 제대로 동작하지 않는 버그를 수정했습니다.
    8. 전방 도시가 진/관/수 처럼 인구가 원래 적은 경우 후방 워프하지 않는 버그를 수정했습니다.
    9. AI 수뇌가 고립된 장수를 구조 발령하지 않는 버그를 수정했습니다.
  3. 기타
    1. 현재 접속자 리스트에서 빙의 해제된 장수가 여전히 표시되는 버그를 수정했습니다.

기타 변경점

  1. 빙의 일람에서 아직 선택하지 않은 장수들에 대한 내역을 추가합니다.

주요 변경점

  1. 많은 버그를 수정했습니다.
  2. 장수 선택 모드를 추가했습니다.
  3. 게임 플레이에 영향을 주는 요소를 일부 수정했습니다.

게임 내 변경점

  1. 도시 정보에서 나오는 장수 순서가 '장수명'에서 '턴 순서'로 변경됩니다.
    1. 곧 턴을 실행할 장수가 가장 위로 옵니다.

엔진 변경점

  1. API 엔진 준비를 위해 DummySession을 시험 구현했습니다.
    1. 아무 동작도 하지 않습니다.
  2. 빙의가 아니라, 준비된 장수 풀에서 장수를 선택해 만드는 옵션을 추가했습니다.
    1. 시나리오 파일에서 장수가 준비되어 있는 경우 사용할 수 있습니다.
    2. 준비되지 않는다면 M장 생성하는 것과 유사한 프로세스로 장수 생성이 진행됩니다.

밸런스 수정

수정된 버그

  1. v0.20 대비
    1. 수비 끔을 반복하면 훈사를 0 이하로 낮출 수 있는 버그를 수정했습니다.
    2. 수몰을 전쟁중이지 않은 국가에서도 쓸 수 있는 버그를 수정했습니다.
    3. 피장파장을 당한 국가에서 로그가 나오지 않는 버그를 수정했습니다.
    4. 1회용 저격 아이템인 수극을 무한히 사용할 수 있는 버그를 수정했습니다.
    5. 종전 수락을 했을 때 접경이 다시 계산되지 않아 NPC가 여전히 출병을 시도하는 버그를 수정했습니다.
    6. 180년 시작 시나리오가 아닌 경우 의병 모집을 할 때 오동작하는 버그를 수정했습니다.
    7. 의병모집을 사용했을 때 의병이 재야로 생성되는 버그를 수정했습니다.
    8. 초반 생성되는 m장의 스탯이 유저장 생성과 똑같이 이루어지던 버그를 수정했습니다.
  2. 서버 리셋 과정에서 시나리오마다 허용하는 특기 세트가 다른 경우 내부 경고가 발생하는 버그를 수정했습니다.

기타 변경점

  1. v0.20.3 중간에 이벤트로 사용한 빼빼로를 추가했습니다.
    1. 통솔, 무력, 지력을 1씩 올려주는 도구였습니다.

(2020-08-13)

버그 수정, 밸런스 수정

주요 변경점

  1. NPC 국이 이미 선포/전쟁 중인 국가에 선포하는 것을 피합니다.
    1. 주변 국가가 선포/전쟁 중인 국가가 없을 때에는 선포할 수 있습니다.
  2. 어떤 도시든 도시 정보를 볼 수 있도록 변경합니다. 대신 거리에 따라 정보가 다릅니다.
    1. 아군 정보: 전체
    2. 아군 장수, 첩보가 있는 도시: 도시 내정, 장수 목록, 장수 병력
    3. 인접 도시: 도시 내정 최대치, 장수 목록, (공백지인 경우 수비/성벽)
    4. 비 인접 도시: 도시 내정 최대치, (공백지인 경우 수비/성벽)

밸런스 수정

  1. 귀병은 전투 첫 페이즈에 매우 높은 확률로 계략을 시도합니다.
  2. 탈취량이 시간이 지날수록 증가합니다.
  3. 화계, 파괴, 선동의 효과가 약 50% 증가합니다.

수정된 버그

  1. 의병모집, 인재탐색 시 귀병의 숙련이 잘못 설정되는 문제를 해결했습니다. (v0.20)

기타 변경점

(2020-07-17)

버그 수정, 전략·특기·아이템 개편

주요 변경점

  1. v0.20.1의 많은 버그가 해결되었습니다.
  2. 전략의 재사용 대기 시간을 전략별로 나누고, 전역 전략 대기 시간을 9턴으로 변경합니다.
    1. 종횡가/음양가의 전략 효과는 전략 대기 시간, 전역 전략 대기 시간 모두에 적용됩니다.
    2. 피장파장은 개별 전략에 발동하며, 전역 전략 대기 시간을 요구하지 않도록 변경됩니다.
    3. 전략별 남은 재사용 대기 시간은 메인 페이지에서 '전략'을 탭하거나, 마우스 오버하여 알 수 있습니다.
  3. 기본 스탯이 총150, 최소10, 최대75에서 총165, 최소15, 최대80으로 변경됩니다.
  4. 무장/공용 전투 특기를 재 설계하였습니다.
    1. 상세 내역은 v0.20.2 버전자 특기 안내 에서 확인 가능합니다.
    2. 지장의 경우 주 변경 대상이 아니며, 다음 패치에 병종 자체의 수정이 계획되어 있습니다.
  5. 아이템 일부를 재 설계하였습니다.

엔진 변경점

  1. 커맨드의 getPostReqTurn()를 원래의 의도대로 엔진에 통합하여, '재사용 대기 시간'으로 동작하도록 구현합니다.
  2. 서버 구성을 동적으로 가능하도록 변경합니다. /d_setting/ServConfig.php 파일을 수정하여 서버 목록을 추가하고 제거할 수 있습니다.
  3. 커맨드 상세 입력창에서 '커맨드 종류'를 입력할 수 있도록 추가합니다.
  4. 파일 캐시를 이용한 구현을 미리 추가합니다.
  5. 전용 아이콘의 파일 형식에 webp를 허용하도록 변경합니다.
    1. webp가 지원되지 않는 브라우저(IE11)은 출력되지 않습니다.

밸런스 수정

  1. 백성동원을 비 전쟁상황에서 쓸 수 있게 수정하였습니다.
  2. 전투 특기를 재 설계하였습니다.
    1. 격노: 필살시 확률 상승(1/3 → 100%), 회피시 확률 감소(1/3 → 1/4), 격노시 중첩 스택
    2. 견고: 위압, 격노 무효화 취소, 피해 감소량 추가 보정
    3. 보병, 궁병, 기병, 귀병, 공성: 본인의 병종 숙련을 활용하여, 공격시 피해량 감소/수비시 공격력 증가
    4. 돌격: 재설계, 전투에 불리하지 않은 병종이라면 퇴각 전까지 계속해서 전투
    5. 무쌍: 승리 수에 따라 전투력 증가 추가. 대미지의 경우 최대 승리 수 200, 피해의 경우 최대 승리수 1000
    6. 반계: 반목에 추가 대미지
    7. 위압: 훈련/사기,병력과 관계없이 항상 발동, 위압 시 상대 회피 불가, 상대 사기 감소 추가
    8. 의술: 전투 치료 확률 대폭 상승(20%→40%), 부상입은 경우 전투 치료로 부상 치료 가능
    9. 저격: 저격 확률 상승(1/3 → 50%), 저격시 최대 피해 감소(20~60% → 20~40%)
    10. 징병: 통솔 보정 상승(15% → 25%)
    11. 척사: 보정 상승(10% → 15%)
    12. 필살: 확률 상승(20%p → 30%p)
  3. 아이템 일부를 재설계하였습니다.
    1. 치료 유니크 아이템이 제거됩니다.
    2. 이추, 향낭(상점 아이템): 성공률 상승
    3. 육도, 삼략: 신산의 일부 기능 추가. 무장도 사용 가능
    4. 백우선: 반계의 일부 기능 추가. 무장도 사용 가능
    5. 태현청생부: 저격, 부상 없음(치료 유니크의 대체)
    6. 상한잡병론 추가
      1. 의술 유니크 아이템 역시 의술 전투 특기와 동일한 향상이 있습니다.
    7. 매화수전, 비도: 저격 전투 특기. 전투특기와 확률 중첩.
    8. 수극(상점 아이템): 확률 증가
    9. 서촉지형도: 추가. 공격 시 페이즈 증가
    10. 전투특기 비급: 변경된 전투특기에 맞게 변경

수정된 버그

  1. v0.20.1 대비 수정
    1. 상업 투자, 기술 연구, 정착 장려, 주민 선정에서 성공/실패 보정이 이루어지지 않는 문제를 수정했습니다.
    2. 특기 초기화가 60턴 단위가 아니라 61턴 단위로 이루어져 의도와 다르게 동작하는 버그를 수정했습니다.
    3. 전투 시뮬레이터에서 적국 장수를 선택할때 '명마'가 드러나는 버그를 수정했습니다.
    4. 감찰부에서 최근 전투 순이 전투 페이즈를 반영하지 않는 버그를 수정했습니다.
    5. 수비 켬끔 수치가 암행부 등에 제대로 표시되지 않는 버그를 수정했습니다.
    6. 도시 치료시 치료 명단이 잘못 뜨는 버그를 수정했습니다.

기타 변경점

  1. 찐유저무쌍!(천지비급) 시나리오를 추가합니다.
    1. 찐유저무쌍! 시나리오에 천지비급의 전특 비급을 추가한 버전입니다.
  2. AI 로직이 조금 더 안정적으로 동작하도록 수정합니다.
    1. 워프 기능, 몰수 기준을 변경합니다.
    2. 금쌀 구매의 기준으로 살상률을 적극적으로 고려합니다.
  3. 로그인 페이지에서 '오픈된 메인서버'의 상태를 보여줍니다.
    1. 최근 10분간의 기록이며, 실시간은 아닙니다.
  4. 전투 시뮬레이터에서 '전투 수', '승리 수', '사살 수'를 입력할 수 있도록 추가합니다.
    1. 현재는 무쌍 전특만 활용합니다.

(2020-06-05)

버그 수정, 밸런스 수정, UI 변경 시작

주요 변경점

  1. v0.20.0의 많은 버그가 해결되었습니다.
  2. 수비 켬/끔, 환약 사용을 세분화하였습니다.
  3. 커맨드 입력창에서 장수 선택, 도시 선택, 국가 선택, 금쌀 수량 지정을 '검색 가능한 형태'로 수정합니다.
    1. 금쌀 수량은 목록에 없을 경우 직접 입력할 수 있습니다.

엔진 변경점

  1. 단순 POST 페이지를 ajax기반으로 마저 변경하고 있습니다.
    1. 휴가 설정, 가오픈 장수 회수, 내정보 수정
  2. 시나리오 Trigger의 동작 시점을 매 월 내부 이벤트 시행 후로 변경합니다.

밸런스 수정

  1. 수비 켬/끔 변경 가능 횟수를 매달 3회 추가, 최대 9회까지 누적하도록 변경합니다.
    1. 이전에는 매달 1회, 최대 3회였습니다.
  2. 수비 켬/끔을 기존의 끄기/60/80에서 끄기/40/60/80/90으로 세분화합니다.
  3. 환약 사용 여부를 구체적으로 지시할 수 있도록 수정합니다.
  4. 부대장을 '추방'하여 턴 시간을 초기화할 수 있습니다.
    1. 추방후 다음달에 새로 부대장이 추가됩니다.
  5. 인재 탐색, 의병 모집을 통해 참여하는 m장이 가진 금쌀이 1000/1000으로 변경됩니다.
  6. 성벽을 공격했을 때 깎이는 도시 내정이 반으로 줄어듭니다.
    1. 183년 공백지 점령시에도 소/중성에 내정이 남아있게됩니다.
  7. 숙련 전환의 효율이 향상됩니다.
    1. 기존 숙련의 40%를 깎아 그중의 90%p를 전환합니다.
  8. 초토화를 '선포 중'에도 사용할 수 있도록 변경합니다.

수정된 버그

  1. v0.20.0 대비 수정
    1. 유니크 습득 확률이 지나치게 높은 문제를 수정했습니다.
    2. 경로 지정 출병 시, 출병 도시가 잘못 출력되는 문제를 수정했습니다.
    3. m장의 내정특기, 전투특기가 잘못 설정된 문제를 수정했습니다.
    4. 인재 탐색의 m장의 능력치 상한이 없어 지나치게 강력한 문제를 수정했습니다.
    5. 등용 커맨드가 잘못 출력되는 문제를 수정했습니다.
    6. 모바일 환경에서 NPC 정책의 항목 정보를 볼 수 없는 문제를 수정했습니다.
    7. 부상당하더라도 최대 통솔대로 징병 가능한 문제를 수정했습니다.
    8. 전투시 계략을 성공해도 추가 대미지 보정이 없는 문제를 수정했습니다.
    9. 1/7월에 세율에 따라 도시 인구 증가량이 바뀌지 않는 문제를 수정했습니다.
    10. 정착 장려, 주민 선정 커맨드의 이득/손해 색상이 거꾸로된 문제를 수정했습니다.
    11. 불가침 국가가 하나라도 있으면 계략을 사용할 수 없는 문제를 수정했습니다.
    12. 등용장이 제대로 수락되지 않는 버그를 수정했습니다.
    13. 인사부의 이미 임명된 장수에 대해 색상이 다르게 표시되지 않는 문제를 수정했습니다.
    14. 요양턴이 있음에도 환약을 소모하는 문제를 수정했습니다.
    15. 암행부에서 '부대 순'으로 정렬할 수 없는 문제를 수정했습니다.
    16. 청주 등 1회성 사기/훈력 증가 아이템이 소모되지 않는 문제를 수정했습니다.
    17. 특성으로 증축할 수 없는 문제를 수정했습니다.
    18. 장수 사망시 본 닉네임이 드러나지 않는 문제를 수정했습니다.
    19. NPC 워프가 제대로 동작하지 않아, 내정이 완료된 도시에선 이동하지 않는 문제를 수정했습니다.
    20. NPC가 치안강화 내정의 필요 여부를 잘못 판단하는 문제를 수정했습니다.
    21. 전투 중 격노가 회피를 취소하지 않는 문제를 수정했습니다.
    22. 사령부 턴이 실행되면 장수가 실행하는 턴의 스택이 취소되는 문제를 수정했습니다.
    23. 사령부에 턴이 입력되어있더라도, 자리가 공석이면 턴이 보이지 않는 무제를 수정했습니다.
    24. 오호장군의 표기 기준이 '승리 순'이 아니라 '전투 순'으로 표기되던 문제를 수정했습니다.
    25. 기타 실제 기능과 표기가 일부 버그들을 수정했습니다.

기타 변경점

  1. 보병, 궁병, 기병, 귀병 전투 특기를 받는 경우 무력, 지력 능력치를 고려하여 주도록 수정합니다.
    1. 이전에는 능력치와 관계없이 가장 높은 숙련도가 기준이었습니다.
  2. NPC AI의 포상 정책룰을 조금 더 안정적으로 수행하도록 수정했습니다.
  3. 랜덤 임관 메시지에 '조금 더 긍정적인 메시지'를 추가합니다.
    1. '천하의 균형을 맞추기 위해' 등의 메시지가 있습니다.
  4. 인재 탐색을 재설계했습니다.
    1. 자국으로 바로 등용하는 '영입'이 사라집니다.
    2. 재야이더라도 인재 탐색을 실행할 수 있습니다.
    3. 능력치를 자국 장수 기준으로 하던 것을 모든 장수의 평균을 기준하도록 수정합니다.
  5. 천지비급 시나리오를 추가합니다.
    1. 전투 특기를 구입하는 형태입니다.
  6. 작위 보상으로 '금쌀 보상'이 추가됩니다.
    1. 기존의 금쌀 1000/1000씩 가지고 추가되는 부대장을 대신합니다.
  7. 명장 일람/명예의 전당에 새로운 항목이 추가됩니다.
    1. 대인 사살
    2. 대인 살상률
    3. 도시 점령 수
    4. 도시 점령률

신엔진 (2020-05-15)

주요변경사항

  • 내부 로직이 전면 재 설계되었습니다.
  1. NPC 로직이 재작성되었습니다.
    1. 새로운 NPC 로직은 NPC 정책란에서 일부 요소를 조정할 수 있습니다.
  2. 기본 턴이 24턴에서 30턴으로 늘어났습니다.
    1. 24턴까지는 기존화면에 노출되고, 25턴부터 30턴까지는 스크롤을 내리면 볼 수 있습니다.
    2. 필요에 따라, 또는 시나리오에 따라 턴 제한이 다르게 구성될 수 있습니다.
  3. 일부 커맨드가 재 설계되었습니다.
    1. 천도, 파괴, 증축, 감축, 초토화
  4. 일부 전투 특기가 재 설계되었습니다.
    1. 저격, 필살

밸런스 수정

  1. 저격 특기가 상향되었습니다.
    1. 출병 시 적군을 전멸시키면 다음 상대에게도 저격을 시도합니다.
    2. 저격에 성공하면 사기가 10 증가합니다.
  2. 필살 특기가 상향되었습니다.
    1. 필살 공격에 성공했을 경우 상대는 회피할 수 없습니다.
  3. 천도 커맨드가 재설계되었습니다.
    1. 천도 턴을 원거리로 수행할 수 있습니다.
      1. 1칸 거리에 3턴이 필요하며, 1칸이 늘어날수록 2턴씩 더 필요합니다.
      2. 모두 수행할 경우 중간 도시를 거치지 않고 한번에 이동합니다.
      3. 1칸씩 멀어질 수록 비용이 2배씩 증가합니다.
    2. 천도턴의 3개월 제약이 사라지며, 몇월인지에 관계없이 계속해서 다른 천도/증축/감축 턴을 넣을 수 있습니다.
  4. 증축/감축 턴의 개월 제약이 사라지며, 도시를 지정할 필요 없이 수도가 기준이 됩니다.
  5. 부대창의 턴을 변경할 수 있습니다.
    1. 부대창을 추방하면, 다음 달에 새로운 부대장이 추가됩니다.
      1. 턴 시간은 랜덤입니다.
    2. 부대장이 추가될 때 제공되는 금쌀이 사라졌습니다.
  6. 초토화 커맨드가 재 설계되었습니다.
    1. 실행시 각각 금쌀 인구 / 2 * (치안율+0.3) * (농업률+0.3) * (상업률+0.3) [내정률 = 0.0 ~ 1.0]씩을 받고 공백지로 만듭니다.
      1. 도시의 내정은 인구 1/5, 농업 1/5, 상업 1/5이 됩니다.
    2. 모든 장수가 아니라 군주와 실행 당시의 수뇌진들의 명성만 깎입니다.
      1. 실행했을 때 시점임을 주의해주세요.
    3. 모든 장수는 내부의 배신 수치가 1 증가합니다.
    4. 최후의 일전에 자금이 필요한 경우 유용하게 활용할 수 있습니다.
  7. 파괴 계략 시, 수비와 성벽을 0까지 낮출 수 있습니다.
  8. 사용되는 일이 거의 없던 항복, 통합 커맨드가 삭제됩니다.
  9. NPC가 조금 더 다양한 동작을 합니다.
    1. 천도도 일정기준에 따라 수행합니다.
    2. 전쟁중이라도 필요에 따라 내정턴을 입력합니다.
    3. 지정한 정책에 따라 전방 부대를 발령발령할 수 있습니다.(예정)
  10. 특기 초기화가 1회만 실행 가능하던 조건에서 완화되었습니다.
    1. 특기 초기화 사용 후 5년 뒤에 다시 사용 가능합니다.
    2. 한번 받은 특기는 다시 받지 않습니다.
  11. 성벽을 공격할 때, 성벽 수비병을 전멸시키더라도, 쌀이 0이 되면, 점령하지 않고 퇴각합니다.

엔진 수정

  1. 내부 백엔드 엔진이 재 구현되었습니다.
  2. 턴 실행 방식이 재설계되었습니다.
    1. 턴 시간 정밀도가 초 단위에서 마이크로초 단위로 변경되었습니다.
    2. Opcode 방식에서 클래스 호출 방식으로 변경됩니다.
      1. 턴 실행 가능 여부, 필요 자금을 더 효율적으로 처리합니다.
    3. 턴 실행 인자가 general 테이블에서 general_turn 테이블로 변경됩니다.
    4. 예약 가능한 최대 턴 수를 서버에 따라 가변으로 설정 가능합니다.
  3. 스탯, 전투 스킬 등이 하드코딩에서 trigger hook 기반으로 재 설계되었습니다.
    1. trigger hook이 설치된 곳은 다음과 같습니다.
      1. 장수 성격
      2. 장수 내정 특기
      3. 장수 전투 특기
      4. 병종
      5. 국가 특성
      6. 도시 관직
      7. 국가 관직
  4. 아이템이 재 설계되었습니다.
    1. 기본 스탯 외에, 다양한 옵션을 줄 수 있습니다.
  5. 장수 AI가 재 설계되었습니다.
    1. 행동을 각 단위로 구분하고, 우선순위에 따라 하나씩 시도합니다.
    2. 정책의 우선순위와 수치는 NPC 정책 페이지를 통해 설정할 수 있습니다.
    3. 정책에 따라 전쟁 중에서도 전쟁장이 일반 내정을 수행할 수 있습니다.
  6. DB 테이블이 정리되었습니다.
  7. 국가, 장수의 상태 관리를 위한 aux 필드가 추가됩니다.
  8. 국가의 기타 변수 관리를 위한 nation_env KVStorage 테이블이 추가됩니다.
    1. aux 필드와는 다르게 빈번하게 수정되는 값들이 주로 보관됩니다.
    2. 빈번하게 수정되더라도, 국가의 상태를 나타내는데 중요한 값인 경우 aux에 보관합니다.
  9. 부대장 관리를 부대번호(Primary Key), 부대장, 국가, 부대명에서 부대장(Primary Key), 국가, 부대명으로 간소화합니다.
    1. 장수 테이블에서 부대장 여부를 더 빠르게 확인합니다.
  10. 국가 관직, 도시 관직의 여부가 `general`테이블의 `officer_level`, `officer_city`로 통합됩니다.
    1. 장수의 관직이 유효한지 여부를 더 빠르게 확인합니다. ($general['city'] == $general['officer_city'])
  11. mysqli_connect, mysqli_query, mysql_fetch_array로 대표되는 레거시 호출을 제거합니다.
    1. MySQL(MariaDB) 호출을 MeekroDB로 일원화 합니다.
    2. 추후 다른 DBMS나 DB Library로 변경하기 위한 사전 단계입니다.
  12. 주요 로그 작성 방식을 변경합니다.
    1. nation 테이블에 기록하던 국가열전을 별도 테이블로 분리합니다.
    2. 파일에 기록하던 개인 기록, 전투 기록, 전투 결과를 DB에 기록합니다.
    3. general 테이블에 기록하던 장수열전을 별도 테이블로 분리합니다.
  13. 연감 데이터를 재정리합니다.
    1. 국력, 장수수, 국명 등을 통합하여 json으로 저장합니다.
  14. 명예의 전당 데이터를 재정리합니다.
    1. 명예의 전당 항목을 int index에서 string으로 변경합니다.
      1. 이후 명예의 전당 항목이 더 추가하는데 용이합니다.
  15. general 테이블에 저장하던 기록 관련 값을 rank_data 테이블로 분리합니다.
    1. 명예의 전당 항목과 유사하게 기록됩니다.
  16. post 명령 후 http header redirect로 동작하던 페이지들 (c_ 로 시작)대부분을 ajax 쿼리로 변경하였습니다.
    1. 이후 ajax 쿼리는 API 호출로 통일할 예정입니다.
  17. 턴관리에 사용하는 global lock을 일원화했습니다.
  18. PHP 7.3, 7.4에 동작하도록 변경하였습니다.

기타 변경사항

  1. 임관턴이 임관, 임의의 국가로 임관, 장수를 따라 임관 세종류로 분류됩니다.
  2. 장비 구입시 '같은 아이템'을 소유하고 있거나, 명마, 무기, 서적 등 유니크 아이템을 소유하고 있는 경우 실패하도록 변경됩니다.
    1. 구매가 꼭 필요한 경우 판매 후 구매해야합니다.
  3. 랜덤 임관 메시지가 '어쩌다보니'에서 조금 더 다양해집니다.
  4. 불가침 제안 방식이 '개월'에서 연,월로 변경됩니다.
  5. 내 정보란에서 과거 정보를 조회가능합니다.
  6. 시나리오마다 최대 포상량을 조절 가능합니다.
  7. 자동 수행턴 목록에 '사령턴'이 추가됩니다.
    1. NPC의 사령턴을 유사하게 흉내내지만, 선포, 세율/지급률관리는 수행하지 않습니다.
    2. 자동 사령턴을 수행하는 경우, 예턴으로 입력한 사령턴이 실패하면 대신 적절한 턴을 입력합니다.
  8. 명성에 따른 Level, 스탯 변화, 숙련레벨 등이 '즉시' 적용됩니다.
    1. 상승/하락에 따른 메시지 또한 바로 나타납니다.
    2. 전투중에 명성이 상승할 경우 바로 다음 전투부터 적용됩니다.
  9. 장수 수 표기에 '부대장'을 제외합니다.
    1. 목록 자체에는 부대장이 표기됩니다.
  10. 애니집결 시나리오의 장수 목록이 변경되었습니다.

수정된 버그

  1. 천도, 증축을 3개월 이내에 연속으로 수행할 수 있는 버그를 수정했습니다.(62che)
    1. 천도, 증축 스택은 천도, 증축이 완료되면 초기화됩니다.
  2. NPC 등장시 중원 정세에 잘못 표기되는 버그를 수정했습니다. (v0.4)
  3. 시나리오 등에서 이미 국가 규모가 높게 나타나는 경우 부대장이 추가되지 않는 버그를 수정했습니다.(v0.9.4)
  • 개발/패치_내역.txt
  • 마지막으로 수정됨: 2024/03/01 20:03
  • 저자 hide_d