示例#1
0
class Equipment(ClassObject):
    key = String(desc='인스턴스 키')
    class_key = String(desc='아이템의 클래스. Item 의 key')

    primary_stat = Dict(Integer(), desc='주스탯')
    primary_option = List(Dict(Integer()), desc='주옵션 { str: 100}, {hp: 200}')
    sub_option = List(Dict(Integer()), desc='보조 옵션. 주 스탯이 아닌 보조 옵션들')
    skill_option = String(desc='아이템의 붙는 스킬 옵션 키')

    strengthen = Integer(desc='현재 장비의 강화도')

    remodeling_chance = Integer(desc='아이템 개조 횟수')
    remodeling_type = String(desc='리모델링 타입 primay / sub')
    remodeling_slot = Integer(desc='옵션 수정 위치 { 주/보조 옵션 : 슬롯 위치')

    curse = Boolean(default=False, desc='아이템 저부 여부 True 일 경우 저주 상태')
    bless = Boolean(default=False, desc='아이템의 축복 여부 True 일 경우 축복 상태')
    lock = Boolean(desc='아이템 잠금 여부')

    equipped = String(desc='이 아이템을 장착한 히어로의 key. 비 장착 중이면 None')
    equipped_preset_key = List(String(), desc='장착된 프리셋의 키. [2, 1, ...]')

    time_add = Integer(default=0, desc='획득 시각. utc.')
    aofei_bind = Boolean(
        default=False, desc='绑定'
    )  #add by ZHM, JoyGames, ALPHA GROUP CO.,LTD, at 2017-04-06 for 增加道具流通属性
    time_tradable = Integer(
        default=0, desc='可交易的保护时间'
    )  #add by ZHM, JoyGames, ALPHA GROUP CO.,LTD, at 2017-03-17 for 增加道具流通属性
示例#2
0
class BattleFieldDefenseUnitBase(ClassObject):
    server_user_id = String(desc='玩家server_user_id')
    base_key = String(desc='base key')
    class_key = String(desc='class key')
    is_hero = Boolean(desc='是否是英雄', default=False)
    is_dead = Boolean(desc='是否死亡', default=False)
    rest_hp = Integer(desc='剩余血量', default=0)
    extra = String(desc='其他信息')
示例#3
0
class BattleFieldDefenseUnit(ClassObject):
    server_user_id = String(desc='玩家server_user_id')
    base_key = String(desc='base key')
    class_key = String(desc='class key')
    is_hero = Boolean(desc='是否是英雄', default=False)
    level = Integer(desc='等级', default=0)
    training = String(desc='养成key,CombatantsTraining.key')
    bless_key = String(desc='祝福key')
    extra = String(desc='其他信息')
    is_dead = Boolean(desc='是否死亡', default=False)
    rest_hp = Integer(desc='剩余血量', default=0)
示例#4
0
class CGGetTeamInfoResponse(ProtocolBase):
    team_id = Integer(desc='队伍id', default=0)
    server_leader_id = String(desc='队长server user id', default=None)
    member_info_list = List(Class(MemberInfo), desc='成员信息列表')
    func_type = String(desc='玩法类型', default=None)
    func_flag = String(desc='玩法具体标识', default=None)
    is_in_match = Boolean(desc='是否在自动匹配中', default=False)
示例#5
0
class BattleFieldRegisterInfo(ClassObject):
    season_key = Integer(desc='赛季')
    field_id = String(desc='区域id')
    register_clan_dict = Dict(Integer(),
                              desc='报名的公会字典, clan_id => register time')
    is_pass_result = Boolean(desc='是否出结果', default=False)
    pass_clan_dict = Dict(Class(BattleFieldRegisterClan),
                          desc='通过的公会字典, clan_id => clan info')
示例#6
0
class BattleFieldBlockSnapshot(ClassObject):
    block_id = Integer(desc='区块id')
    clan_id = String(desc='公会id')
    is_fort = Boolean(desc='是否是堡垒')
    status = Integer(desc="据点状态", default=enum_block_status.NEUTRAL)
    battle_timeout = Integer(desc='战斗超时时间戳,针对普通据点', default=0)
    fort_war_end_time = Integer(desc='占领战结束时间戳', default=0)
    protect_end_time = Integer(desc='据点保护结束时间', default=0)
示例#7
0
class BattleFieldFortDefenseInfo(ClassObject):
    rest_defense_count = Integer(desc='剩余防守者数量', default=0)
    is_battle_data_init = Boolean(desc='战斗数据是否初始化', default=False)
    battle_data_init_time = Integer(desc='战斗数据初始化时间', default=0)
    point_detail_dict = Dict(Class(FortPointDetail),
                             desc='据点信息, point_id => info')
    before_battle_defense = Class(FortBeforeBattleDefense, desc='战前防守阵容信息')
    facility_info_list = List(Class(FortFacility), desc='公会建筑信息')
    defense_log_list = List(Class(BFBlockDefenseLog), desc='防守变更日志列表')
示例#8
0
class TeamBossFirstStageDetail(ClassObject):
    stage_id = String(desc='副本id', default=None)
    is_finish = Boolean(desc='是否已完成', default=False)
    battle_server_mem_id = String(desc='正在战斗中的玩家server user id', default=None)
    battle_mem_name = String(desc='正在战斗的玩家名', default=None)
    battle_mem_hero_key = String(desc='正在战斗的玩家主角id', default=None)
    battle_start_time = Integer(desc='战斗开始时间', default=0)
    battle_end_time = Integer(desc='战斗结束时间', default=0)
    deck = Class(CommonAttackDeckMultiMercenary, desc='战斗阵容信息')
示例#9
0
class BattleFieldClanInfo(ClassObject):
    clan_id = String(desc='公会id')
    season_key = Integer(desc='赛季')
    register_field_id = String(desc='报名的区域id')
    register_time = Integer(desc='报名时间')
    own_blocks = List(Integer(), desc='拥有的地块编号列表')
    is_give_reward = Boolean(desc='是否已给奖励', default=False)
    reward_items = Dict(Integer(), desc='奖励内容')
    reward_time = Integer(desc='给奖励时间', default=0)
    log_list = List(Class(BattleFieldClanLog), desc='公会相关日志列表')
示例#10
0
class BattleFieldBlockInfoToC(ClassObject):
    is_fort = Boolean(desc='是否是要塞', default=False)
    status = Integer(desc='据点状态')
    clan_id = String(desc='公会id')
    clan_mission = Class(BattleFieldClanMission, desc='公会指示')
    protect_end_time = Integer(desc='保护结束时间', default=0)
    battle_server_user_id = String(desc='战斗中的玩家server_user_id')
    battle_timeout = Integer(desc='战斗超时时间戳', default=0)
    fort_war_clan_id = String(desc='攻击该要塞的公会id')
    fort_war_start_time = Integer(desc='要塞战开始时间戳(针对要塞据点)', default=0)
    fort_war_end_time = Integer(desc='要塞战结束时间戳(针对要塞据点)', default=0)
    product_items = Dict(Integer(), desc='据点产出的物品字典')
    last_product_time = Integer(desc='据点上一次产出时间', default=0)
    defense_unit_count = Integer(desc='当前防守单位数量', default=0)
    defense_info = List(Class(BattleFieldDefenseUnit), desc='防守信息')
示例#11
0
class MasterItem(ClassObject):
    key = String(desc='아이템의 키(id)')
    name = String(desc='이름')
    type = String(desc='아이템 종류. 무기/방어구/장신구/기술서/재화/재료/영혼석/물약')
    equip_pos = String(
        desc='아이템 장착 위치. weapon/helm/armor/cloak/gloves/boots/ear/ring')
    rarity = Integer(desc='희구도. 별개수.')
    quality = String(desc='아이템 등급. 고급/일반=high/general')
    option = String(desc='장비품의 옵션 정보')
    set_option = String(desc='장비품의 세트 옵션 정보')
    owner_class = String(desc='사용 가능한 직업군. Combatant 의 key.')
    resource_id = String(desc='리소스 id')
    int_attr = Dict(Integer(),
                    desc='정수로 표시되는 아이템 속성 값. {p_atk: 100, level: 2, ...}')
    str_attr = Dict(String(),
                    desc='문자로 표시되는 아이템 속성 값. {key: 커츠, target: 천재, ...}')
    stage = List(String(), desc='출현 스테이지. [1-1, 2-3, ...]')
    strengthen_rate = String(desc='아이템 강화도 확률 아이디')
    strengthen_stat = String(desc='아이템 강화도 스텟 아이디')
    desc = String(desc='아이템 설명')
    price = Integer(desc='판매 가격')
    imprint_exp = Integer(desc='각인 경험치')
    # add by Yoray, JoyGames, ALPHA GROUP CO.,LTD, at 2017-03-29
    # detail: 装备初始属性随机相关
    aofei_int_type = String(desc='装备随机属性类型')
    aofei_int_min = Integer(desc='装备随机属性下限')
    aofei_int_max = Integer(desc='装备随机属性上限')
    # >>add by ZHM, JoyGames, ALPHA GROUP CO.,LTD, at 2017-04-06 for 增加道具流通属性
    aofei_tradable = Boolean(desc='可交易')
    aofei_start_price = Integer(desc='初始均价')
    aofei_time_tradable = Integer(desc='交易间隔')
    aofei_look_time_trade = Integer(desc='公示期')
    aofei_order_type = String(desc='交易行分类')
    aofei_review_time = Integer(desc="审核时间(秒)")

    # <<add by ZHM, JoyGames, ALPHA GROUP CO.,LTD, at 2017-04-06 for 增加道具流通属性

    def can_equip_by_hero(self, hero_class_key):
        return self.owner_class in ['Common', hero_class_key]

    def get_index_meta(self):
        """
        인덱싱에 사용할 메타 정보 반환
        :return: dict: {인덱스 이름: 인덱스 컬럼 리스트, ...}
        """
        return {
            'type': (self.type, )  # 스킬 보유 캐릭터 기준 인덱싱
        }
示例#12
0
class UserSession(ClassObject):
    session_id = String(desc='세션의 인스턴스 id')
    user_id = String(desc='유저 id')
    platform = String(desc='접속 장비의 플랫폼. ex. aos, ios')
    server_selected = String(desc='입장 선택한 서버')
    server_group = String(desc='입장서버에 따라 그룹으로 묶인 서버')
    created = Boolean(default=False, desc='기사단 생성 여부')
    block_status = Integer(default=0, desc='유저 블록 상태. 0 : 블록 아님, 1: 정해진 기간, 2: 영구 블록')
    block_expiry_time = Integer(default=0, desc='블록 만료 시간. utc')

    time_last_request = Integer(default=0, desc='마지막 요청을 보낸 시간. utc')
    time_last_login = Integer(default=0, desc='마지막으로 로그인 성공한 시간. utc')
    country = String(desc='유저의 국가 코드. KR/JP/... 클라에서 보낸 값')
    np_id = String(desc='플랫폼 np id. 플랫폼에서는 GUID 라고도 부름')

    server_user_id_migration = Dict(Integer(), desc='서버통합 데이터로 마이그레이션 된 시각 UTC')

    aofei_account_id = String(desc='account id')
    aofei_account_name = String(desc='account name')
    last_operation = String(desc='last operation')
示例#13
0
class MasterEquipment(ClassObject):
    key = String(desc='Equipment 의 key')
    equipment_type = String(desc='Equipment 의 분류')
    primary_option = String(desc='장비의 분류 한손무기 / 양손검 / 활 등등')
    sub_option = String(desc='장비의 옵션 아이디 값')
    sub_count = Integer(desc='서브 옵션의 개수')
    set_option = String(desc='장비의 세트 옵션 아이디 값')
    skill_option = String(desc='장비의 스킬 옵션 값 BahaviorBase 의 값')
    strengthen_rate = String(desc='장비의 강화 확률 아이디')
    strengthen_stat = String(desc='장비의 강화도에 따른 스탯 아이디')
    bless_rate = String(desc='장비의 축복 강화 확률 아이디')
    bless_stat = String(desc='장비의 축복 강화 에 따른 스탯 아이디')
    compose_key = String(desc='합성시 획득하는 포이트의 키 값')
    compose_result = Boolean(desc='합성 결과 등장 여부')
    rarity = Integer(desc='희귀도')
    safety_strengthen = Integer(desc='안전 강화 단계')
    aofei_rand_attr = String(desc="装备初始随机属性")#add by ZHM, JoyGames, ALPHA GROUP CO.,LTD, at 2017-06-20 for 装备初始随机属性

    def get_index_meta(self):
        return {
            'get_compose_result_items': (self.rarity, self.compose_result, self.equipment_type)
        }
示例#14
0
class TeamBossFirstDetail(ClassObject):
    is_finish = Boolean(desc='是否已完成', default=True)
    stage_dict = Dict(Class(TeamBossFirstStageDetail), desc='第一阶段所有副本信息')
示例#15
0
class BattleExtInfo(ClassObject):
    is_self_die = Boolean(desc='是否自己死亡', default=False)
    server_caster_id = String(desc='攻击者server user id', default=None)
    server_target_id = String(desc='目标server user id', default=None)
    damage = String(desc='伤害值', default=0)
示例#16
0
class FortPointStatus(FortPointSnap):
    is_in_battle = Boolean(desc='是否战斗中', default=False)
示例#17
0
class CGSynTeamMatchStatus(ProtocolBase):
    is_in_match = Boolean(desc='是否在自动匹配中', default=False)
示例#18
0
class CGSynMemberOnlineStatus(ProtocolBase):
    server_member_id = String(desc='成员server user id', default=None)
    is_online = Boolean(desc='是否在线', default=False)
示例#19
0
class CGSynMemReadyStatus(ProtocolBase):
    server_member_id = String(desc='成员server user id', default=None)
    func_type = String(desc='玩法类型', default=None)
    func_flag = String(desc='玩法具体标识', default=None)
    is_ready = Boolean(desc='是否准备', default=False)
示例#20
0
class BTBattleInitFinish(ProtocolBase):
    auto_status = Boolean(desc='自动状态')
示例#21
0
class SCUpdateFollowLeaderRequest(ProtocolBase):
    follow_leader = Boolean(desc='是否跟随队长')
示例#22
0
class SCSyncMemFollowLeader(ProtocolBase):
    server_user_id = String(desc='玩家server user id')
    follow_leader = Boolean(desc='是否跟随')
示例#23
0
class TeamBossBattleMember(ClassObject):
    server_user_id = String(desc='玩家server user id')
    is_off = Boolean(desc='是否断线', default=False)
    is_init_ok = Boolean(desc='是否初始化完成', default=False)
    is_dead = Boolean(desc='是否死亡', default=False)
    battle_data = Class(TeamBossBattleUnitHero, desc='战斗数据')
示例#24
0
class AddNewTeamMember(ClassObject):
    server_member_id = String(desc='成员id', default=None)
    is_online = Boolean(desc='是否在线', default=False)
示例#25
0
class AlphaFortWarPointStatus(AlphaFortWarPointSnap):
    is_in_battle = Boolean(desc='是否战斗中', default=False)
示例#26
0
class MasterMailRow(ClassObject):
    key = String(desc='master data 의 고유 키')
    category = String(desc='메일의 탭 분류 스트링 값')
    category_code = Integer(desc='메일의 탭 아이디 값 0 : 시스템 1: 친구')
    keep_time = Integer(desc='메일 받은 후 보유 기간')
    reward_all = Boolean(desc='메일 전체 수령 가능 여부')
示例#27
0
class MasterInventory(ClassObject):
    key = String(desc='아이템 종류. 무기/방어구/장신구/기술서/재화/재료/영혼석/물약')

    inven = String(desc='인벤 저장소')
    cat_1 = String(desc='인벤토리 대분류 ')
    stack = Boolean(desc='아이템 누적 여부')
示例#28
0
class TeamBossPartDetail(ClassObject):
    part_key = String(desc='boss部位key, part表key')
    cur_hp = Integer(desc='当前血量')
    max_hp = Integer(desc='最大血量')
    is_finish = Boolean(desc='是否已完成', default=True)
示例#29
0
class SceneMemberInfo(ClassObject):
    server_user_id = String(desc='成员server_user_id')
    follow_leader = Boolean(desc='是否跟随队长', default=False)
示例#30
0
class MemberInfo(ClassObject):
    server_member_id = String(desc='队员信息', default=None)
    is_online = Boolean(desc='是否在线', default=False)