???
Математика на уровне МГУ

Показано с 1 по 25 из 1242

Тема: Dedicated Server

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #6
    Пилот Аватар для LePage
    Регистрация
    17.07.2009
    Адрес
    Simbirsk
    Возраст
    56
    Сообщений
    511

    Ответ: Dedicated Server

    типа, счетчик времени отпал.

    где-то в этом куске кода ошибка возникает:

    ... tick() {
    00793 validateTowAircraft();
    00794 if(dying == 0)
    00795 {
    00796 long l = Time.tickNext();
    00797 if(Mission.isCoop())
    00798 l = NetServerParams.getServerTime() + (long)Time.tickLen();
    00799 if(path != null)
    00800 {
    00801 computeInterpolatedDPR(l);
    00802 setMovablePosition(l);
    00803 } else
    00804 if(computeInterpolatedDPR(l))
    00805 setPosition();
    00806 boolean flag = false;
    00807 if(wakeupTmr == 0L)
    00808 {
    00809 for(int j = 0; j < prop.nGuns; j++)
    00810 if(parts[arms[j].part_idx].state == 0)
    00811 {
    00812 arms[j].aime.tick_();
    00813 flag = true;
    00814 }
    00815
    00816 } else
    00817 {
    00818 for(int k = 0; k < prop.nGuns; k++)
    00819 {
    00820 if(parts[arms[k].part_idx].state != 0)
    00821 continue;
    00822 flag = true;
    00823 break;
    00824 }
    00825
    00826 if(wakeupTmr > 0L)
    00827 wakeupTmr--;
    00828 else
    00829 if(++wakeupTmr == 0L)
    00830 if(isAnyEnemyNear())
    00831 wakeupTmr = BigshipGeneric.SecsToTicks(BigshipGeneric.Rnd(DELAY_WAKEUP, DELAY_WAKEUP * 1.2F));
    00832 else
    00833 wakeupTmr = -BigshipGeneric.SecsToTicks(BigshipGeneric.Rnd(4F, 7F));
    00834 }
    00835 if(flag)
    00836 send_bufferized_FireCommand();
    00837 if(isNetMirror())
    00838 mirror_send_bufferized_Damage();
    00839 else
    00840 if(netsendPartsState_needtosend)
    00841 send_bufferized_PartsState();
    00842 return true;
    00843 }
    00844 if(dying == 3)
    00845 {
    00846 if(path != null || !Mission.isDeathmatch())
    00847 {
    00848 eraseGuns();
    00849 return false;
    00850 }
    00851 if(respawnDelay-- > 0L)
    00852 return true;
    00853 if(!isNetMaster())
    00854 {
    00855 respawnDelay = 10000L;
    00856 return true;
    00857 } else
    00858 {
    00859 wakeupTmr = 0L;
    00860 makeLive();
    00861 forgetAllAiming();
    00862 setDefaultLivePose();
    00863 setDiedFlag(false);
    00864 tmInterpoStart = tmInterpoEnd = 0L;
    00865 bodyDepth = bodyPitch = bodyRoll = 0.0F;
    00866 bodyDepth0 = bodyPitch0 = bodyRoll0 = 0.0F;
    00867 bodyDepth1 = bodyPitch1 = bodyRoll1 = 0.0F;
    00868 setPosition();
    00869 pos.reset();
    00870 send_RespawnCommand();
    00871 return true;
    00872 }
    00873 }
    00874 if(netsendPartsState_needtosend)
    00875 send_bufferized_PartsState();
    00876 long l1 = Time.tickNext();
    00877 if(dying == 1)
    00878 {
    00879 if(l1 >= tmInterpoEnd)
    00880 {
    00881 bodyDepth0 = bodyDepth1;
    00882 bodyPitch0 = bodyPitch1;
    00883 bodyRoll0 = bodyRoll1;
    00884 bodyDepth1 = sink2Depth;
    00885 bodyPitch1 = sink2Pitch;
    00886 bodyRoll1 = sink2Roll;
    00887 tmInterpoStart = tmInterpoEnd;
    00888 tmInterpoEnd = sink2timeWhenStop;
    00889 dying = 2;
    00890 }
    00891 } else
    00892 if(l1 >= tmInterpoEnd)
    00893 {
    00894 bodyDepth0 = bodyDepth1 = sink2Depth;
    00895 bodyPitch0 = bodyPitch1 = sink2Pitch;
    00896 bodyRoll0 = bodyRoll1 = sink2Roll;
    00897 tmInterpoStart = tmInterpoEnd = 0L;
    00898 dying = 3;
    00899 }
    00900 if((Time.tickCounter() & 0x63) == 0 && dsmoks != null)
    00901 {
    00902 for(int i = 0; i < dsmoks.length; i++)
    00903 if(dsmoks[i] != null && dsmoks[i].pipe != null && dsmoks[i].pipe.pos.getAbsPoint().z < -4.891D)
    00904 {
    00905 Eff3DActor.finish(dsmoks[i].pipe);
    00906 dsmoks[i].pipe = null;
    00907 }
    00908
    00909 }
    00910 computeInterpolatedDPR(l1);
    00911 if(path != null)
    00912 setMovablePosition(timeOfDeath);
    00913 else
    00914 setPosition();
    00915 return true;
    00916 }


    p/s/ карта с кораблями? и что в логах клиентов в этот момент? и неплохо бы пару строчек предшествующих ошибке. java.lang.

    p/p/s/ еще подумалось, а GC.CMD часто запускается? может уменьшить интервал между запусками?
    Крайний раз редактировалось LePage; 12.12.2009 в 16:38.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •