Автор |
Сообщение |
Admin Карма: 9 |
Добавлено: 11:15 7 февраля 2010 | |
|
Задавайте вопросы и предлагайте, как улучшить, сервис по созданию mapcyles ссылка
|
Warcheg Карма: 0 |
Добавлено: 11:53 7 февраля 2010 | |
|
"de_inferno
de_inferno
de_inferno"
Обалденно)
|
Warcheg Карма: 0 |
Добавлено: 12:08 7 февраля 2010 | |
|
Ну я кажется знаю как улучшить это:
// для каждой карты из массива
foreach ($maps as $map) {
// Если предыдущая карта не такая же как сейчас
if ($mapprev!=$map){
//Если нету карт-дублей
if ($doubled!=''){
echo $map."rn";
$mapprev=$map;
}
else{
//Если дубль есть, то выводим обе карты и стираем дубль
echo $map."rn".$doubled."rn";
$doubled='';
}
}
else{
// Если предыдущая карта совпадает, то сохраняем
$doubled=$mapprev;
}
}
Вот, должно работать Допилить под скрипт который сейчас и все
|
Admin Карма: 9 |
Добавлено: 13:22 7 февраля 2010 | |
|
Автор: Warcheg Цитата:
"de_inferno
de_inferno
de_inferno"
Обалденно)
для какого сервера? с каким значением учета редких карт? это весь маплист или вырезка?
|
Warcheg Карма: 0 |
Добавлено: 13:25 7 февраля 2010 | |
|
общая база, 10
вырезка...
там еще была куча повсторений
|
Light Карма: 0 |
Добавлено: 18:57 25 февраля 2010 | Исправлялось: 2 раз (26-02-10 01:22, Light) | |
|
У меня тоже дублит при, почти, любых условиях.
Автор: Warcheg Цитата:
Ну я кажется знаю как улучшить это:
// для каждой карты из массива
foreach ($maps as $map) {
// Если предыдущая карта не такая же как сейчас
if ($mapprev!=$map){
//Если нету карт-дублей
if ($doubled!=''){
echo $map."rn";
$mapprev=$map;
}
else{
//Если дубль есть, то выводим обе карты и стираем дубль
echo $map."rn".$doubled."rn";
$doubled='';
}
}
else{
// Если предыдущая карта совпадает, то сохраняем
$doubled=$mapprev;
}
}
Вот, должно работать Допилить под скрипт который сейчас и все
Извиняюсь, конечно, но нахера такой быдлокод?
Предлагаю просто загнать полученные карты в массив и сделать array_unique.
|
Hafner Карма: 0 |
Добавлено: 20:57 25 февраля 2010 | |
|
Предлагаю просто загнать карты в массив и сделать array_unique
И получится стандартный список карт Вашего сервера. Какой тогда смысл генератора и ротатора карт?
|
Light Карма: 0 |
Добавлено: 01:20 26 февраля 2010 | |
|
Если внимательно посмотреть код Warcheg, то можно заметить что там как раз и осуществляется абсолютно корявое отсеивание.
Я не говорил что нужно загнать все карты что есть на сервере в массив.
Я лишь предложил механизм отсеивания дубликатов.
|
Admin Карма: 9 |
Добавлено: 09:46 26 февраля 2010 | |
|
смысл в том, чтобы как раз дубликаты были!
Если карта А по статистике в 4 раза популярнее, чем карта В, то логично, чтобы время игры этой карте было в 4 раза больше.
Здесь есть 2 решения: простое и универсальное: ставить карту А в маплист 4 раза, а В - 1; или через плагины прописывать maptime для А = 4*maptime B.
С плагинами не все дружат, а файл маплист переписать - это базис любого админсервера.
ЗЫ: написал на бумажко новую формулу расчета, изменю на днях алгоритм. Должен поумнее расставлять повторы
|
YodL Карма: 1 |
Добавлено: 12:57 26 февраля 2010 | Исправлялось: 2 раз (26-02-10 13:04, YodL) | |
|
По мне так лучше стандартными средствами AMX менять продолжительность игры на карте.
Например дд2 можно минут 50 поиграть, если выбрали какой нить фарш, пулдай, минут 5-10 для него хватит, трейн можно тоже подольше поиграть и тп.
По мне так гораздо удобнее =)
В таком случае можно в маплист поставить много мяса, между нормальными картами, но протяженностью в 10 раз меньше.
Хотя согласен что при отсутствие выбора карт лучше еще в маплисте продублировать популярные карты.
Мне посоветовали вот такой маплист
de_dust2_2x2
de_dust2_2x2
de_dust2
de_dust2
de_dust2
Если если сервис так карты расставляет, то все же лучше только время менять, а карты по 1й оставить.
Когда ты предлагал ПХП скрипт написать, это была единственная сложная задача, и с ней не справились (
|
|
|