Comments 20
Быть может так сталось, что эту игру для себя (понастальгировать) пишут прожженые бородачи переключаясь на нее в свободное от кернел-хакинга время. Возраст игры тому косвенное подтверждение.
+2
В чем связь между «кернел-хакингом» и количеством ошибок?
0
Высокая культура кода, этапы разработки, обязательный ревью, борода.
+12
Скорее связь не с «кернел-хакингом», а с «в свободное время». Нет давления «скорее-скорее, некогда думать про ошибки, дедлайн вчера».
0
Не факт, грубо говоря есть две цели (на самом деле не две, но на этих проще показывать) «написать реально красивый код, чему на работе мешают постоянные делайны» и «получить продукт который давно хотел» и в зависимости от их соотношения количество некритичных ошибок и в целом качество кода могут сильно плавать.
0
Как же так получается, что в коде ошибки, причем иногда довольно серьезные, а программы вполне успешно функционируют?
0
Ошибка #1 — не думаю что логическая ошибка, имхо они хотели сделать вот так:
if (i == 0) {
Chain.push_back(CoastalPoint(indexx,CVector2D(xx*2,yy*2)));
} else {
Chain.push_front(CoastalPoint(indexx,CVector2D(xx*2,yy*2)));
CoastalPointsSet.erase(xx + yy*SideSize);
found = true;
break;
}
0
Я посмотрел, что там происходит — обход в глубину для множества прибрежных точек. Соответственно, если мы дошли до точки xx = xx + around[p][0]
, то мы уже выбрали следующую вершину. Поэтому скобки тут не причём. А наличием if (nbNeighb >= 2)
, скорее всего, хотелось "почистить" ближайшие точки, как это сделано для стартовой вершины, чтобы много волн не пересекалось рядом.
0
История игры берёт своё начало с 2000 года. Поэтому в коде встречаются (особенно библиотечного) всякие архаизмы, которые стараемся подчищать. Но в плюсовом коде это происходит медленнее. Небольшая часть этих ошибок уже известна, и патчи ждут конца FF.
+4
ребята в планах есть обжектив с?
0
Нет. Сейчас в планах Java.
+1
После Джавы какие-нибудь планы есть?
(например, было интересно Rust)
(например, было интересно Rust)
0
Вряд ли, столь малый процент рынка, а если посчитать ребят, готовых взять b2b решение и платить, то, думаю, около нуля цифра будет, к сожалению.
0
Java это очень большая задача. Причём не только в плане реализации, но и продвижения, учёте пожеланий первых пользователей и т.д. Пока рано забегать вперёд и думать дальше.
0
Думаю, не слишком ошибусь в оценке, если скажу, что коммерческого джава-кода минимум в 1000 раз больше, чем кода на расте.
Если вы хотите хороший статический анализатор для него, то возьмите большую кодобазу на расте, наблюдайте за багами, и открывайте обсуждения в репе clippy.
Если вы хотите хороший статический анализатор для него, то возьмите большую кодобазу на расте, наблюдайте за багами, и открывайте обсуждения в репе clippy.
+1
Разумно!
0
Еще они молодцы, потому что игра классная. Ну это так, мелочи.
0
Первая ошибка крутая, молодцы!
+1
shared_ptr<u8[]> fileData = shared_ptr<u8>(new u8[fileSize]);
тогда уж
shared_ptr<u8[]> fileData = make_shared<u8[]>(fileSize);
или так
auto fileData{make_shared<u8[]>(fileSize)};
0
Sign up to leave a comment.
Авторы игры 0 A.D. — молодцы