이번에 버프 이후 4셋을 맞추신 분들은 무슨 스킬을 먼저 눌러야 될지 감이 잘 안 잡힐겁니다.
그래서 1학년 때 교양으로 배워두었던 저의 조잡한 c++ 실력으로 시뮬레이션을 했습니다.

코드는 아래와 같습니다.

#include<iostream>
#include<time.h>
#include<random>
#include<functional>

using namespace std;

int main()
{
 mt19937 engine((unsigned int)time(NULL));
 uniform_int_distribution<int>distribution(0, 999);
 auto generator = bind(distribution, engine);
 int r;                                                 // 랜덤(생각해보면 괜히 만듬)
 int count_1 = 100000;                                  // 시물 횟수(시간)
 int bp = 20;                                           // 가속 버프 남은 시간
 int cp = 1;                                            // 위대한 성전사 버프 (응징의 방패 사용시 신성한 힘)
 int hp = 0;                                            // 신성한 힘
 int a = 0;                                             // 성전사의 일격 쿨타임
 int b = 0;                                             // 심판 쿨타임
 int c = 0;                                             // 응징의 방패 쿨타임
 int a_rank[2];                                         // 성전사의 일격 우선순위 0 = 위대한 성전사 버프가 있을때, 1 = 없을때
 int b_rank[2];                                         // 심판 우선순위              위와 동일
 int c_rank[2];                                         // 응징의 방패 우선순위       위와 동일
 for(int k = 0; k < 6; k++)
 {
     a_rank[0] = (k - k % 2)/2;
     b_rank[0] = a_rank[0] - (1 + k % 2);
     c_rank[0] = a_rank[0] + (1 + k % 2);
     if(b_rank[0] == -1)
        b_rank[0] = 2;
     if(b_rank[0] == -2)
        b_rank[0] = 1;
     if(b_rank[0] == 3)
        b_rank[0] = 0;
     if(b_rank[0] == 4)
        b_rank[0] = 1;
     if(c_rank[0] == -1)
        c_rank[0] = 2;
     if(c_rank[0] == -2)
        c_rank[0] = 1;
     if(c_rank[0] == 3)
        c_rank[0] = 0;
     if(c_rank[0] == 4)
        c_rank[0] = 1;
     for(int p = 0; p < 6; p++)
     {
     a_rank[1] = (p - p % 2)/2;
     b_rank[1] = a_rank[1] - (1 + p % 2);
     c_rank[1] = a_rank[1] + (1 + p % 2);
     if(b_rank[1] == -1)
        b_rank[1] = 2;
     if(b_rank[1] == -2)
        b_rank[1] = 1;
     if(b_rank[1] == 3)
        b_rank[1] = 0;
     if(b_rank[1] == 4)
        b_rank[1] = 1;
     if(c_rank[1] == -1)
        c_rank[1] = 2;
     if(c_rank[1] == -2)
        c_rank[1] = 1;
     if(c_rank[1] == 3)
        c_rank[1] = 0;
     if(c_rank[1] == 4)
        c_rank[1] = 1;
     a = 0;
     b = 0;
     c = 0;
     bp = 20;
     cp = 1;
     hp = 0;
        for(int t = 0; t < count_1; t++)
        {
                bp -= 1;
            if(a != 0)
                a -= 1;
            if(b != 0)
                b -= 1;
            if(c != 0)
                c -= 1;
                if(bp <= 1 && b == 0)
                {
                hp += 1;
                b = 4;
                bp = 20;
                continue;
                }
                if(cp == 1)
            {
                if(a == 0 && a_rank[0] == 0)
            {
                hp += 1;
                r = generator();
                if( r < 300)
                    {
                        c = 0;
                        cp = 1;
                    }
                a = 3;
                continue;
            }
                else if(b == 0 && b_rank[0] == 0)
            {
                hp += 1;
                b = 4;
                bp = 20;
                continue;
            }
                else if(c == 0 && c_rank[0] == 0)
            {
                cp = 0;
                c = 10;
                hp += 1;
                r = generator();
                if( r < 500)
                {
                    c = 0;
                    cp = 1;
                }
                continue;
            }
                else if(a == 0 && a_rank[0] == 1)
               {
                hp += 1;
                r = generator();
                if( r < 300)
                    {
                        c = 0;
                        cp = 1;
                    }
                a = 3;
                continue;
            }
                else if(b == 0 && b_rank[0] == 1)
            {
                hp += 1;
                b = 4;
                bp = 20;
                continue;
            }
                else if(c == 0 && c_rank[0] == 1)
            {
                cp = 0;
                c = 10;
                hp += 1;
                r = generator();
                if( r < 500)
                {
                    c = 0;
                    cp = 1;
                }
                continue;
            }
                else if(a == 0 && a_rank[0] == 2)
            {
                hp += 1;
                r = generator();
                if( r < 300)
                    {
                        c = 0;
                        cp = 1;
                    }
                a = 3;
                continue;
            }
                else if(b == 0 && b_rank[0] == 2)
            {
                hp += 1;
                b = 4;
                bp = 20;
                continue;
            }
                else if(c == 0 && c_rank[0] == 2)
            {
                cp = 0;
                c = 10;
                hp += 1;
                r = generator();
                if( r < 500)
                {
                    c = 0;
                    cp = 1;
                }
                continue;
            }
            }
            if(cp == 0)
            {
                if(a == 0 && a_rank[1] == 0)
            {
                hp += 1;
                r = generator();
                if( r < 300)
                    {
                        c = 0;
                        cp = 1;
                    }
                a = 3;
                continue;
            }
                else if(b == 0 && b_rank[1] == 0)
            {
                hp += 1;
                b = 4;
                bp = 20;
                continue;
            }
                else if(c == 0 && c_rank[1] == 0)
            {
                cp = 0;
                c = 10;
                r = generator();
                if( r < 500)
                {
                    c = 0;
                    cp = 1;
                }
                continue;
            }
                else if(a == 0 && a_rank[1] == 1)
            {
                hp += 1;
                r = generator();
                if( r < 300)
                    {
                        c = 0;
                        cp = 1;
                    }
                a = 3;
                continue;
            }
                else if(b == 0 && b_rank[1] == 1)
            {
                hp += 1;
                b = 4;
                bp = 20;
                continue;
            }
                else if(c == 0 && c_rank[1] == 1)
            {
                cp = 0;
                c = 10;
                r = generator();
                if( r < 500)
                {
                    c = 0;
                    cp = 1;
                }
                continue;
            }
                else if(a == 0 && a_rank[1] == 2)
            {
                hp += 1;
                r = generator();
                if( r < 300)
                    {
                        c = 0;
                        cp = 1;
                    }
                a = 3;
                   continue;
               }
                  else if(b == 0 && b_rank[1] == 2)
               {
                   hp += 1;
                   b = 4;
                   bp = 20;
                   continue;
               }
                  else if(c == 0 && c_rank[1] == 2)
               {
                   cp = 0;
                   c = 10;
                   r = generator();
                   if( r < 500)
                   {
                    c = 0;
                    cp = 1;
                   }
                   continue;
               }
            }
         }
        cout << hp << " / " << count_1 <<endl << a_rank[0] << b_rank[0] << c_rank[0] << "   and   " << a_rank[1] << b_rank[1] << c_rank[1] << endl;
    }
 }
 return 0;
}



좀 아시는 분이 보시면 이게 얼마나 조잡한 코딩인지 아실겁니다... ㅠㅠ(교양으로 배웠고, 시간도 좀 지났으니 이해해주세욤)

아무튼 이게 중요한건 아니고 결과는


위대한 성전사 효과가 있든 없든 성전사의 일격 1순위, 심판 2순위, 응징의 방패 3순위 로 사용하는 것이 가장 많은 신성한 힘을 얻을 수 있습니다.

혹시라도 코드를 볼 수 있는 분은 제가 한 코드에 문제가 있으면 한 수 가르쳐주시면 감사합니다....;ㅁ;
기본적으로 가속 50%일 때 글쿨 1초, 성격 3초, 심판 4초, 응방 10초를 기준으로 삼았습니다.

올린 코드가 자꾸 없어지네요... 이유는 모르겠는데 그래서 압축 파일로 올릴께요. 

후기 : 오늘 영웅 성체가서 위 싸이클대로 했더니 킬로그에서 96.7% 정패율을 보았습니다. 심지어 이때 별 다른 생각없이 정패만 했고, 텍틱이 바뀌어서 처음에 자리 잡는다고 한 10초 정패를 못 쳤다는걸 감안했을때 확실히 효과가 있다고 생각합니다.
응방만 계속 날리면 빠르게 신힘이 쌓이는것 같지만, 응방만 했을때 간신히 33초를 보았지만, 이번에 이 싸이클 대로 하니 신복 후에 36초까지 봤습니다.

그리고 응방만 계속 던진다면 보호막을 100% 활용 못 하는 단점이 있었는데, 이 싸이클대로 할 경우 보호막을 100%활용할 수 있습니다.

핵심은 간단합니다. 성스러운 일격을 기준으로 싸이클을 돌리십시오. 성격 사이에 무조건 2개의 스킬을 쓰고 다시 성격을 사용할 수 있습니다.(이는 가속 50% 이하라도 다 가능합니다. 스킬 설계 자체가 그런듯 합니다.)

보통 성격 심판 응방 성격 응방 심판 성격 응방 응방 (이까지 1싸이클)성격 심판 응방 성격 응방 심판 성격 응방 응방... 이런 식으로 0.1 초의 망설임도 없이 계속 넣으면서 중간에 응방이 쿨이 초기화 되지 않았으면 성보를 눌러주는 식으로 싸이클을 돌릴 수 있습니다.