vasbelous Posted March 7, 2015 Share Posted March 7, 2015 При стрельбе с упреждением по движущейся цели. Если танк противника находиться на расстоянии в 200 метров и едет на фоне гор, до которых 2000 метров, и вы делаете упреждение чтобы попасть по танку, то куда по вашему будет целиться орудие танка? Оно будет целиться в гору, которой 2000 метров, значит угол возвышения у орудия будет большой, значит когда вы выстрелите то снаряд пролетит над танком противника, так как танк находиться на дистанции в 200 метров. Мод позволяет сохранять дистанцию прицеливания в течении нескольких секунд после того как танк противника побывал в прицеле. Прошу прощения, не внятно написал, я речь вел о артиллерийском прицеле и о захвате относительной высоты цели. Т.е. суть как это работает я понимаю, но мне не ясно когда это работает (аркада, снайп, артоснайп) я понимаю, что это дает профит при стрельбе с упреждением, но как это работает при выстреле по неподвижному танку (0,5+0,3?) тогда должен быть частый перелет. @ Quote Link to comment Short link Share on other sites More sharing options...
GPCracker Posted March 7, 2015 Author Share Posted March 7, 2015 (edited) При стрельбе с упреждением по движущейся цели. Если танк противника находиться на расстоянии в 200 метров и едет на фоне гор, до которых 2000 метров, и вы делаете упреждение чтобы попасть по танку, то куда по вашему будет целиться орудие танка? Оно будет целиться в гору, которой 2000 метров, значит угол возвышения у орудия будет большой, значит когда вы выстрелите то снаряд пролетит над танком противника, так как танк находиться на дистанции в 200 метров. Мод позволяет сохранять дистанцию прицеливания в течении нескольких секунд после того как танк противника побывал в прицеле.Все верно. Так работает мод в снайперском режиме. Для артиллерии (нормальный вертикальный режим) захватывается не расстояние до цели, а высота. При ручном захвате высоты - абсолютная высота (y-координата), что позволяет закидывать "под крышу", т.е. под мосты, на вокзал в химках и т.д. При захвате цели - можно включить поправку на высоту цели, о которой я и писал парой постов выше. Данная фича упрощает стрельбу по движущимся целям. Но нужно точно рассчитать упреждение. Иначе снаряд пролетит рядом с целью и взорвется на безопасном для нее расстоянии. Эффективно при стрельбе ББ. Но опять же - это для нормального (вертикального) арт-режима. В артоснайпе эти функции будут мешать. Edited March 7, 2015 by GPCracker @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted March 7, 2015 Share Posted March 7, 2015 Прошу прощения, не внятно написал, я речь вел о артиллерийском прицеле и о захвате относительной высоты цели. Т.е. суть как это работает я понимаю, но мне не ясно когда это работает (аркада, снайп, артоснайп) я понимаю, что это дает профит при стрельбе с упреждением, но как это работает при выстреле по неподвижному танку (0,5+0,3?) тогда должен быть частый перелет. Проблема с высотой возникает только если смотришь сверху вниз. Это проблема артиллерийского режима. В остальных режимах взгляд направлен параллельно поверхности земли, это позволяет вам в прицеле выбрать точку прицеливания на противнике по вертикали - гусли, борт корпуса, борт башни, командирская башня. И направить снаряд именно в эту точку. Однако, когда вы смотрите на противника сверху вы видите только крышу корпуса и крышу башни. Следовательно это единственные высоты прицеливания которые вам доступны. Тогда не удивительно что игрок целящийся в крышу, но думающие что он попадет в борт башни, в реальности просто промахивается и его снаряд тупо перелетает через противника по параболе. В моде же можно высоту скорректировать, так чтобы целясь в крышу, ваше орудие брало прицел чуть ниже и вы уже наверняка попадали бы в борт башни. @ Quote Link to comment Short link Share on other sites More sharing options...
GPCracker Posted March 7, 2015 Author Share Posted March 7, 2015 (edited) неподвижному танкуНе работает, если захваченная цель находится в фокусе (подсвечен контур).В моде же можно высоту скорректировать, так чтобы целясь в крышу, ваше орудие брало прицел чуть ниже и вы уже наверняка попадали бы в борт башни.Не совсем. В арт-режиме прицеливания осуществляется на СЕРЕДИНУ ВЫСОТЫ ТАНКА В ТОЧКЕ НАВЕДЕНИЯ. Пруф def getDesiredShotPoint(start, dir, onlyOnGround = False, isStrategicMode = False, terrainOnlyCheck = False): end = start + dir.scale(10000.0) if isStrategicMode: if terrainOnlyCheck: return __collideTerrainOnly(start, end) point1 = __collideStaticOnly(start, end) point2 = collideDynamicAndStatic(start, end, (BigWorld.player().playerVehicleID,), skipGun=isStrategicMode) if point1 is None or point2 is None: point = None else: dir = Math.Vector3(point2[0]) - Math.Vector3(point1[0]) point = (Math.Vector3(point1[0]) + dir.scale(0.5), None) else: point = collideDynamicAndStatic(start, end, (BigWorld.player().playerVehicleID,), skipGun=isStrategicMode) if point is not None: return point[0] elif not onlyOnGround: return shootInSkyPoint(start, dir) else: return реальности просто промахивается и его снаряд тупо перелетает через противника по параболе.Промах идет как пролет снаряда над корпусом танка рядом с башней. Edited March 7, 2015 by GPCracker @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted March 7, 2015 Share Posted March 7, 2015 (edited) Не совсем. В арт-режиме прицеливания осуществляется на СЕРЕДИНУ ВЫСОТЫ ТАНКА В ТОЧКЕ НАВЕДЕНИЯ. 50% исходной высоты? Дык это значит точка прицеливания от балды получается. И это для арты с фугасом с копеечным пробитием, не удивительно что пробитие на арте - это рулетка. Edited March 7, 2015 by StranikS_Scan @ Quote Link to comment Short link Share on other sites More sharing options...
vasbelous Posted March 7, 2015 Share Posted March 7, 2015 (edited) Благодарю за пояснения, теперь все стало на свои места, единственный вопрос захват относительной высоты работает для всех режимов прицеливания на арте или нет? Добавлю, в этом патче 9.6 стал замечать странную особенность, снаряд стал чаще уходить в бок (причем в 80% влево), а раньше были в основном недолёты/перелёты... Edited March 7, 2015 by vasbelous @ Quote Link to comment Short link Share on other sites More sharing options...
GPCracker Posted March 7, 2015 Author Share Posted March 7, 2015 (edited) 50% исходной высоты? Дык это значит точка прицеливания от балды получается. И это для арты с фугасом с копеечным пробитием, не удивительно что пробитие на арте - это рулетка.Это точка, прицеливание в которую обеспечивает максимальное попадание в танк. Плюс-минус. Точнее целиться нет смысла, у арты и так разброс в пол-экрана.единственный вопрос захват относительной высоты работает для всех режимов прицеливания на арте или нет?Только в артиллерийском (вертикальном) режиме прицеливания. В артоснайпе тоже можно будет включить, но польза от этого будет отрицательная. Т.к. артоснайп - модификация артиллерийского прицела (всего лишь наклон камеры), но никак не новый режим. Upd. Удалось загнать ResMgr конфиг в UTF-8 w/o BOM. А раньше почему-то не получалось... Перекодирование ввода-вывода та еще проблема... В сообщениях в ангаре русский вперемешку с немецким нормально идет.) Остальное не тестировал, но то, что реализовано через флеш (стандартные GUI игры) думаю пойдет без проблем. А вот с BW GUI могут возникнуть проблемы - там ограниченные текстурные шрифты. С лёвой проблема с самой первой версии - не отображается вторая буква. Её просто в шрифтах нет... "А вот и секрет" <default_small.font> <creation> <sourceFont> HGSoeiKakugothicUB </sourceFont> <sourceFontSize> -15 </sourceFontSize> <startChar> 32 </startChar> <endChar> 255 </endChar> <effectsMargin> 1.0 </effectsMargin> <textureMargin> 1.0 </textureMargin> <dropShadow> true </dropShadow> <shadowAlpha> 128 </shadowAlpha> <bold> true </bold> </creation> <generated> <map> system/fonts/HGSoeiKakugothicUB_15.dds </map> <mapDimensions> 1024.000000 128.000000 </mapDimensions> <maxWidth> 19 </maxWidth> <height> 18 </height> <uvs> 0000000000060000000c000000150000001f0000002900000038000000450000004b0000005200000059000000610000006c00000072000000790000007f000000850000008f00000099000000a3000000ad000000b7000000c1000000cb000000d5000000df000000e9000000ef000000f5000001000000010b0000011600000121000001320000013d0000014a0000015700000164000001700000017b00000189000001960000019c000001a6000001b3000001be000001cd000001da000001e8000001f4000002020000020f0000021b00000227000002340000023f0000024e0000025a0000026600000270000002770000027d000002840000028f00000299000002a0000002aa000002b5000002bf000002ca000002d5000002dc000002e7000002f2000002f8000002fe000003080000030e0000031c00000327000003320000033d00000348000003500000035a000003610000036c00000377000003840000038e00000397000003a1000003a9000003af000003b7000003c2000003c9000003d8000003e3000003e9000003f100000000002000110020001b002000250020002f00200043002000550020005c0020006e0020007900200088002000940020009f002000a5002000ab002000b5002000bf002000c6002000d0002000e1002000e8002000f90020010a00200111002001210020012b0020013600200140002001420020014d00200156002001600020016a0020017300200179002001830020018f0020019c002001a9002001b3002001be002001c5002001d2002001d8002001e0002001ea002001f0002001f6002001ff0020020a002002140020021a0020022500200238002002420020024c002002520020025e002002680020026e0020027900200286002002930020029e002002ab002002b7002002c7002002d2002002df002002ec002002f70020030400200313002003200020032e0020033b0020034700200354002003600020036b0020037b0020038700200394002003a1002003b1002003c1002003d0002003e1002003ee00200000004000110040001e00400028004000330040003e00400046004000520040005d00400069004000720040007d00400088004000920040009e004000ab004000b6004000c1004000cc004000d7004000e1004000e9004000f2004001020040010c0040011700400122004001300040013e0040014b0040015a004001650040016f0040017e0040 </uvs> <widths> 00050005000800090009000e000c0005000600060007000a0005000600050005000900090009000900090009000900090009000900050005000a000a000a000a0010000a000c000c000c000b000a000d000c00050009000c000a000e000c000d000b000d000c000b000b000c000a000e000b000b0009000600050006000a000900060009000a0009000a000a0006000a000a0005000500090005000d000a000a000a000a000700090006000a000a000c000900080009000700050007000a0006000e000a00050007000900100009000900090013001100060011000a000e000b000a00050005000900090006000900100006001000100006000f0009000a00090001000a000800090009000800050009000b000c000c0009000a0006000c000500070009000500050008000a00090005000a0012000900090005000b00090005000a000c000c000a000c000b000f000a000c000c000a000c000e000c000d000c000b000c000b000a000f000b000c000c000f000f000e0010000c000c0010000c0009000a000a0007000b000a000b0008000a000a0009000b000c000a000a000a000a000900070008000f0009000a000a000d000d000c000e000a0009000e000a </widths> </generated> </default_small.font> Шрифты можно генерить, есть в исходниках BW код. Но ставить Студию нет ни времени, ни желания. Как и разбираться в этих кодах. К тому же почти все GUI работает через флэш. В котором в принципе нет проблем со шрифтами, если компилить правильно. Edited March 8, 2015 by GPCracker 1 @ Quote Link to comment Short link Share on other sites More sharing options...
ger Gauf Posted March 8, 2015 Share Posted March 8, 2015 Почитал последние посты.... GPCracker Благодарю за пояснения @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted March 8, 2015 Share Posted March 8, 2015 (edited) с BW GUI могут возникнуть проблемы - там ограниченные текстурные шрифты. С лёвой проблема с самой первой версии - не отображается вторая буква. Её просто в шрифтах нет... Не так. В font файле ни кто не тебе не мешает снять ограничение на ширину диапазона символов и удалить при этом секцию <generated> <startChar> 0 </startChar> <endChar> 255 </endChar> И заюзать любой шрифт поддерживающий Unicode, однако, у BW GUI есть проблема с кодовой таблицей, он умеет отображать символы только из конкретных кодовых таблиц и не умеет юникод и не умеет совмещать таблицы. Как результат, берем для примера Courier New и диапазон 0-255 в font. Затем выводим в GUI.Text имена танков из игры 30 штук все за раз в одну строку. И что мы видим английские и русские буквы есть - немецких нет, или немецкие есть - а ни русских ни английских нет. А чтобы одновременно были и английские и русские и немецкие - фиг вам. Edited March 8, 2015 by StranikS_Scan @ Quote Link to comment Short link Share on other sites More sharing options...
GPCracker Posted March 8, 2015 Author Share Posted March 8, 2015 Не так. В font файле ни кто не тебе не мешает снять ограничение на ширину диапазона символов и удалить при этом секцию <generated> <startChar> 0 </startChar> <endChar> 255 </endChar> И заюзать любой шрифт поддерживающий Unicode, однако, у BW GUI есть проблема с кодовой таблицей, он умеет отображать символы только из конкретных кодовых таблиц и не умеет юникод и не умеет совмещать таблицы. Как результат, берем для примера Courier New и диапазон 0-255 в font. Затем выводим в GUI.Text имена танков из игры 30 штук все за раз в одну строку. И что мы видим английские и русские буквы есть - немецких нет, или немецкие есть - а ни русских ни английских нет. А чтобы одновременно были и английские и русские и немецкие - фиг вам. Хм... Но все равно это не решение, т.к. английские и русские буквы есть - немецких нет, или немецкие есть - а ни русских ни английских нет. А чтобы одновременно были и английские и русские и немецкие - фиг вам. @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted March 8, 2015 Share Posted March 8, 2015 (edited) Хм... Но все равно это не решение, т.к. Да, решения пока нет. Я не смог заставить корректно немецкую букву ё совместно с буквами другого алфавита отображаться в gui, может кто знает. Проблема конечно неприятная. Однако возникает не часто и её можно обойти. Достаточно сделать так чтобы в тектовой метки отображались только буквы одного алфавита, например если в метке только имя одного танка, то проблем не будет. А вот если в метке имена нескольких танков и они рус и дойче - то будет косяк. Edited March 8, 2015 by StranikS_Scan @ Quote Link to comment Short link Share on other sites More sharing options...
MakcT40 Posted March 8, 2015 Share Posted March 8, 2015 (edited) Дык, зареплейсить на похожие буквы... def dirtyEncodingFix(s): s = s.replace('\xc3\xa4', 'a') s = s.replace('\xc3\xb6', 'o') s = s.replace('\xc3\xbc', 'u') return unicode(s, 'utf-8')Умляутов, конечно, не будет, но всё равно лучше выглядит, чем пробел. Edited March 8, 2015 by MakcT40 1 @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted March 8, 2015 Share Posted March 8, 2015 Дык, зареплейсить на похожие буквы... def dirtyEncodingFix(s): s = s.replace('\xc3\xa4', 'a') s = s.replace('\xc3\xb6', 'o') s = s.replace('\xc3\xbc', 'u') return unicode(s, 'utf-8')Умляутов, конечно, не будет, но всё равно лучше выглядит, чем пробел. Этого достаточно для танков или это не всё? @ Quote Link to comment Short link Share on other sites More sharing options...
MakcT40 Posted March 8, 2015 Share Posted March 8, 2015 Я не встречал названий танков с другими немецкими буквами. @ Quote Link to comment Short link Share on other sites More sharing options...
ger Gauf Posted March 8, 2015 Share Posted March 8, 2015 (edited) Я в этом не особо разбираюсь , но что , нельзя другой шрифт запилить , тот в котором всё работает , и русс , и нем ? Вот к примеру. Сам для мода CDP панели искал. Отсюда брал . весьма удобный сайт , видно сразу , будет отображаться эта умляута и русс буквы или нет. http://www.fonts-online.ru Все работают.rar Edited March 8, 2015 by gergauf @ Quote Link to comment Short link Share on other sites More sharing options...
GPCracker Posted March 8, 2015 Author Share Posted March 8, 2015 Сам для мода CDP панели искал.Всякие там панели робят на флеше. А тут BW GUI. Это разные вещи. Во флеше вообще нет проблем с кодировками/шрифтами. Я не встречал названий танков с другими немецкими буквами.Но наверняка встречал французские. @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted March 9, 2015 Share Posted March 9, 2015 Проверил я немецкий алфавит, сделал подмены. С французским всё плохо, там не только кракозябликов больше, да еще и не понятно чем их заменять, почитал правила лексики и фонетики - мутота с французами да и только ((( def umlaut_converter(s): if s: if '\xc3\x84' in s: s = s.replace('\xc3\x84', 'A') if '\xc3\xa4' in s: s = s.replace('\xc3\xa4', 'a') if '\xc3\x96' in s: s = s.replace('\xc3\x96', 'O') if '\xc3\xB6' in s: s = s.replace('\xc3\xB6', 'o') if '\xe1\xba\x9e' in s: s = s.replace('\xe1\xba\x9e', 'SS') if '\xc3\x9f' in s: s = s.replace('\xc3\x9f', 'ss') if '\xc3\x9c' in s: s = s.replace('\xc3\x9c', 'U') if '\xc3\xbc' in s: s = s.replace('\xc3\xbc', 'u') return unicode(s, 'utf-8') GPCracker, как правильно время полета снаряда до точки попадания рассчитать? @ Quote Link to comment Short link Share on other sites More sharing options...
ger Gauf Posted March 9, 2015 Share Posted March 9, 2015 Всякие там панели робят на флеше. А тут BW GUI. Это разные вещи. Во флеше вообще нет проблем с кодировками/шрифтами. Понял, отстал... @ Quote Link to comment Short link Share on other sites More sharing options...
GPCracker Posted March 9, 2015 Author Share Posted March 9, 2015 GPCracker, как правильно время полета снаряда до точки попадания рассчитать?Самый точный вариант - взять WG функцию расчета углов наведения, функцию расчета точки выстрела. shotPoint.flatDistTo(targetPoint) / (shotSpeed * math.cos(gunPitch)) Дальше думаю сам сообразишь. @ Quote Link to comment Short link Share on other sites More sharing options...
Scharfhobel Posted March 9, 2015 Share Posted March 9, 2015 1. Самый простой способ - просто заменять немецкие спецсимволы по следующему правилу:- ü = ue- ö = oe- ä = ae- ß = ss это правило общепринято, и все немцы поймут, если написать таким образом. @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.