1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Последнее сообщение от loko9988

  1. loko9988
    Здравствуйте. Я знаю перевод ошибок, но не могу понять при каких условиях они срабатывают, чего не хватает 22:45:20 gdeliveryd: warning : kingelection startup, status=vote Запущен выбор короля, хорошо, в чем смысл предупреждения, что идет этап голосования? 22:45:27 gdeliveryd: err : gdelivery:: disconnect from GameDB 22:45:27 gdeliveryd: err : Map already loaded. status=41 Самое интересное, почему disconnect from GameDB ? Если при этом все хорошо работает, и это уже не предупреждение, а ошибка. Ну и Map already loaded. status=41 (карта уже была загружена, при этом я не могу допустим через пв админ запустить 2/3/4 раза подряд карту, как она могла уже быть запущена? Статус - как узнать значимость id статуса? Какие есть еще айди ошибок статусов? И что они значат gamed: err : roleid:59584 lose a invalid title[72] Тоже интересный момент, айди перса, недействительный титул, но как такое может быть, ошибки типа выдать неправильный айди титула быть не может, так как проверяю только на существующих id титулов. Упоминается [72] что это? void KingElection::OnDBLoad(KingElectionDetail & detail) { if(_status == ST_INIT) { _king = detail.king; _candidate_list.swap(detail.candidate_list); for(size_t i=0; i<_candidate_list.size(); i++) { if(_candidate_list[i].serial_num > _max_serial_num) _max_serial_num = _candidate_list[i].serial_num; } time_t cur_time = UpdateTime(); int weekoffset = cur_time - _week_begin; if(weekoffset >= CANDIDATE_APPLY_BEGIN_TIME && weekoffset < CANDIDATE_APPLY_END_TIME) _status = ST_CANDIDATE_APPLY; else if(weekoffset >= CANDIDATE_APPLY_END_TIME && weekoffset < VOTE_BEGIN_TIME) _status = ST_WAIT_VOTE; else if(weekoffset >= VOTE_BEGIN_TIME && weekoffset < VOTE_END_TIME) _status = ST_VOTE; else _status = ST_OPEN; if(_status != ST_OPEN) Log::log(LOG_WARNING, "kingelection startup, status=%s", Status2Str(_status)); if(_king.roleid > 0) { if(cur_time >= _king.end_time || _status != ST_OPEN) { int reason = cur_time > _king.end_time ? DELKING_REASON_EXPIRE : DELKING_REASON_ERROR; Log::log(LOG_WARNING, "kingelection startup, status=%s, delete king, kingid=%d reason=%d", Status2Str(_status), _king.roleid, reason); __DeleteKing(reason); } } if(_candidate_list.size()) { if(_status == ST_OPEN) { bool recover_king = false; if(weekoffset >= VOTE_END_TIME) { for(size_t i=0; i<_candidate_list.size(); i++) { if(_candidate_list[i].votes > 0) { recover_king = true; break; } } } if(recover_king) { __GenerateKing(); Log::log(LOG_WARNING, "kingelection startup, status=%s, generate king, kingid=%d", Status2Str(_status), _king.roleid); } else { Log::log(LOG_WARNING, "kingelection startup, status=%s, delete candidate, count=%d", Status2Str(_status), _candidate_list.size()); __DeleteCandidate(DELCANDIDATE_REASON_ERROR); } } else if(_status == ST_WAIT_VOTE || _status == ST_VOTE) { if(_candidate_list.size() > CANDIDATE_MAX) { Log::log(LOG_WARNING, "kingelection startup, status=%s, generate candidate, count=%d", Status2Str(_status), _candidate_list.size()); __GenerateCandidate(); } } } } } void GameDBClient::OnDelSession(Session::ID sid) { Thread::Mutex::Scoped l(locker_state); conn_state = false; Reconnect(); //TODO Log::log(LOG_ERR,"gdelivery:: disconnect from GameDB\n"); } bool BattleManager::LoadMap(std::vector<GTerritoryDetail>& v) { size_t count = domain_data_getcount(); if(v.size()!=count) { Log::log(LOG_ERR,"Map load error. load size%d, config size %d", v.size(), count); return false; } if((status&ST_DATAREADY)&&(cities.size()==count)) { Log::log(LOG_ERR,"Map already loaded. status=%d", status); } else { cities = v; time_t now = Timer::GetTime(); size_t i = 0; //int week=now/604800; for(TVector::iterator it=cities.begin(),ie=cities.end();it!=ie;++it,++i) { DOMAIN_INFO_SERV * p = domain_data_getbyindex(i); if(it->level!=p->type) return false; if(it->owner) { if(it->color==0 || it->color>TERRITORY_NUMBER) it->color = SelectColor(it->owner); } else it->color = 0; if(it->battle_time && it->challenger!=0 && it->battle_time<now+600) { it->status |= CS_BATTLECANCEL; Log::log(LOG_ERR,"Battle time missed, cancel cityid=%d defender=%d attacker=%d deposit=%d time=%d.", it->id, it->owner, it->challenger, it->deposit, it->battle_time); } if(it->challenger && !it->battle_time) { status |= ST_SETTIME; } if(it->challenger==0) { it->deposit = 0; it->maxbonus = 0; it->cutoff_time = 0; } // if((it->bonus_time/604800)==week) // { // status |= ST_SPECIALOK; // } } status |= ST_DATAREADY; SyncMapNotice(); //通知gfaction加载城战相关帮派信息 SyncBattleFaction(); } FactionResourceBattleMan::GetInstance()->OnDomainLoadComplete(); return true; } bool player_title::LoseTitle(TITLE_ID tid) { if(!IsExistTitle(tid)) { GLog::log(LOG_ERR,"roleid:%d lose a no exist title[%d] \n",_owner->_parent->ID.id, tid); return false; } const title_essence* title = world_manager::GetTitleMan().GetTitleEssence(tid); if(!title) { GLog::log(LOG_ERR,"roleid:%d lose a invalid title[%d] \n",_owner->_parent->ID.id, tid); return false; } title->DeactivateEssence(_owner); property_policy::UpdatePlayer(_owner->GetPlayerClass(),_owner); EraseVectorElement(_delivered_titles,CheckIdFunctor(tid)); EraseVectorElement(_expire_titles,CheckExpireFunctor(tid)); _owner->_runner->notify_title_modify(tid,0,0); if(_current_title == tid) { ChangeCurrTitle(0); } GLog::log(LOG_INFO,"roleid:%d lose title[%d] \n",_owner->_parent->ID.id, tid); return true; }
    Сообщение от: loko9988, 6 апр 2019 в разделе: PW Вопросник
  2. loko9988
  3. loko9988
  4. loko9988
    9. Если пл в пати вышел(вылетел) из игры, то его сопартийцы могут получить ПЛ написав в чат группы специальную команду Из интереса спрошу. А как это работает? ПЛ вышел с игры, ни у кого нет ПЛ, пока какой-то челик не напишет специальную команду в чат группы? Или: ПЛ покинул пати, другой человек получил ПЛ и любой написавший в чат группы может забрать ПЛ у другого человека? Прост я не вижу отличия от обычной передачи ПЛ, которая долгое время работает прекрасно на фришках/китай/пви/руофф. А то есть: ПЛ вышел с пати, первый в списке пати получает ПЛ. Так в чём отличие и как оно работает? Данная штука более для гуя например. У человека дисконнект, но из сети он не вылетает (функция пвнод оставила его "дух"). После один из игроков команды пишет "пл пл" например, и управление группой передается ему. Например где-то ограничение на смену ПЛ, или кол-во человек для пати, при изменении квест может провалиться. Для этого и сделали его.
    Сообщение от: loko9988, 4 апр 2019 в разделе: Продам
  5. loko9988
  6. loko9988
  7. loko9988
  8. loko9988
  9. loko9988
    Всем привет, поступил в свободную продажу комплекс защиты PWNODE автора freepvps Краткий функционал: 1. Антиддос 2. Антибрут (примитивный, но работает жи!) 3. Лимит на кол-во подключений 4. Лимит на трафик c->s и s->c 5. Антисветофор (наверное самая пакостная вещь) 6. Возможность полного и неполного логирования трафика 7. При усиленном выходе(или вылете) из игры персонаж остается в сети некоторое время(указанное в конфиге). Можно оставить кота торговать, персонажа медитировать и так далее. 9. Если пл в пати вышел(вылетел) из игры, то его сопартийцы могут получить ПЛ написав в чат группы специальную команду 10. Сообщение при входе в мир со всякими там "Добро пожаловать на наш сервер Procion":) Полностью разобранный трафик клиент-сервер версии 1.5.5+ поддержка серверов до версии 1.6.2 включительно. ГАРАНТИЯ 100%! ВОЗВРАТ ДЕНЕГ ПРИ НЕЭФФЕКТИВНОСТИ ЗАЩИТЫ!* Данный комплекс полностью решает проблемы с любым из видов OOG атак. Конфиги и полиси написаны с учетом реальных игровых нагрузок и разбора серверного кода файлов игры Perfect World. Цена 50.000 рублей или 800$ В комплект поставки входит программа с документацией, а также установка и настройка по SSH\TW доступу. Автор freepvps готов к доп изменению функционала по договоренности. -------------- *Есть несколько случаев "очевидных" , если идёт UPD TCP флуд и падает сервер, вина не продукта. L3 траффик фильтрует владелец сервера. Темы: http://mmorpg-devs.ru/threads/pwnode.19132/ http://mmorpg-devs.ru/threads/%D0%92%D0%BE%D0%BF%D1%80%D0%BE%D1%81-open-source-pwnode-1-5-5.20122/ http://mmorpg-devs.ru/threads/share-c-pwnode.19223/
    Автор темы: loko9988, 1 апр 2019, ответов - 10, в разделе: Продам
  10. loko9988
  11. loko9988
  12. loko9988
  13. loko9988