_D_V_S_ 14 #193493 Posted June 17, 2014 по идее, можно. Пути не полные, а относительные. То есть Ваш пример подходит если все эти файлы в одной папке. Спасибо! Надо проверить будет. 1. Что это за файлы и где ты их взял??? :"damageText.xc";"damageTextPlayer.xc";"damageTextSquadman.xc" 2. Чтоб с дамагом отлетал текст только у игрока и совзводного я создал дополнительно "damageText1" 3. В отдельные файлы??? Это же текст!!! Проще наверно создать "damageText2"; "damageText3" 4. Это всё как я понимаю... а я не супер спец... 1. Дык сам создам :-) 2. Это я понял. 3. В отдельные файлы - чтобы на будущее легче было конфиги по себя переделывать. На файл ссылку легче вставлять, чем весь текст в новый конфиг. 4. Я сам только учусь тут :-) Quote Share this post Link to post Short link Share on other sites
vicont 13 #193497 Posted June 17, 2014 1. Дык сам создам :-) 3. В отдельные файлы - чтобы на будущее легче было конфиги по себя переделывать. На файл ссылку легче вставлять, чем весь текст в новый конфиг. 1. Сам создашь файл .xc??? 3. Это ТЕКСТ а не картинка. В будущем менять в файле ничего не надо. Quote Share this post Link to post Short link Share on other sites
sech_92 469 #193498 Posted June 17, 2014 Сам создашь файл .xc? да, хоть миллион. для каждого отдельного параметра. Может чего с быстродействием на древних винтах станет, а так-то проблем нет никаких. Файловая структура многофайлового конфига не определена строго. Quote Share this post Link to post Short link Share on other sites
vicont 13 #193501 Posted June 17, 2014 да, хоть миллион. для каждого отдельного параметра. Может чего с быстродействием на древних винтах станет, а так-то проблем нет никаких. Файловая структура многофайлового конфига не определена строго. То что это сделаешь ты я не сомневаюсь но для него это думаю будет не легко . Намного проще сделать : "damageText2"; "damageText3" если в этом будет необходимость. А в принципе пусть парень дерзает !!! Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193502 Posted June 17, 2014 Эксперимент с созданием новых файлов damageText*.xc провалился... В файл просто скопипастил содержимое damageText без последней запятой, и создал его в том-же каталоге, что и остальные файлы *.xc XVM не запустился ((( Знаний по устройству конфигов XVM остро не хватает :-) 1. Сам создашь файл .xc??? 3. Это ТЕКСТ а не картинка. В будущем менять в файле ничего не надо. 1. А что в этом такого трудного? Создать новый текстовый файл в Нотепаде++ ? Может я чего не знаю? Неужто надо битхачить их в хекс-эдиторах? 2. Хм... Долго думал над этим... Quote Share this post Link to post Short link Share on other sites
Azbuka 278 #193503 Posted June 17, 2014 (edited) XVM не запустился ((( Анализируйте XVM.log. Знаний по устройству конфигов XVM остро не хватает :-) Какие там знания? Простейший JSON, легко читается и так же легко понимается. Вся необходимая информация тут (Под вторым спойлером) Edited June 17, 2014 by Azbuka_slovensko Quote Share this post Link to post Short link Share on other sites
vicont 13 #193504 Posted June 17, 2014 Эксперимент с созданием новых файлов damageText*.xc провалился... 1. А что в этом такого трудного? Создать новый текстовый файл в Нотепаде++ ? Может я чего не знаю? Неужто надо битхачить их в хекс-эдиторах? 2. Хм... Долго думал над этим... Дерзай и всё получиться... Ты хотел текст с отлетающим уроном???...он у тебя есть!!! Чем мог помог, а теперь думаю ты хер...ёй занимаешся---без обид. Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193507 Posted June 17, 2014 (edited) Анализируйте XVM.log.Он к сожалению нулевого размера так и остался... Какие там знания? Простейший JSON, легко читается и так же легко понимается. Вся необходимая информация тут (Под вторым спойлером) Спасибо, почитаю. С яваскриптами вплотную ещё не работал... А навскидку, не подскажешь - в новом файлике никаких шапок не надо? Я просто скопипастил содержимое секции damageText туда, только последнюю запятую убрал. Не подхватилось... Может какие начальные/конечные теги нужны? PS Я по-привычке "ты"-каю :-) Надеюсь, этим никого не задеваю. В то время, когда начинал общение в интернете (конец 90-ых) - "вы"-кание в сетевом общении было остро неприемлемо в любых кругах :-) Говорили: "Когда в виртуале ВЫкают, в реале уже морду бьют ногами " :-) Edited June 17, 2014 by _D_V_S_ Quote Share this post Link to post Short link Share on other sites
Azbuka 278 #193524 Posted June 17, 2014 в новом файлике никаких шапок не надо Шапок, заголовков и прочего в JSON'е нету. просто скопипастил Примерно так должно быть: В my_new_config.xc: { "my_new_section": { //Какие-то записи } } И ссылка в другой xc: ${"my_new_config.xc":"."} 1 Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193540 Posted June 17, 2014 Шапок, заголовков и прочего в JSON'е нету. Примерно так должно быть: В my_new_config.xc: { "my_new_section": { //Какие-то записи } } И ссылка в другой xc: ${"my_new_config.xc":"."} Огромное спасибо! Как раз "корневых" фигурных скобок я и не поставил. Ещё вопросы можно? : если файл выносить за пределы того-же каталога, надо указывать полный путь? "C:\FOLDER0\FOLDER1\FILENAME.XC" - так? Слэши прямые или обратные? Quote Share this post Link to post Short link Share on other sites
sech_92 469 #193551 Posted June 17, 2014 если файл выносить за пределы того-же каталога, надо указывать полный путь? можно относительные."вверх" получается как "../" без кавычек. Quote Share this post Link to post Short link Share on other sites
Azbuka 278 #193612 Posted June 18, 2014 Слэши прямые или обратные? В XVM используются "/". Но Windows скорее всего будет ругаться на "C:/FOLDER0/FOLDER1/FILENAME.XC". А всё потому, что буквы дисков в Windows такая же большая ошибка, как и наличие реестра. Можно попробовать использовать двойные "\": "C:\\FOLDER0\\FOLDER1\\FILENAME.XC" Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193685 Posted June 18, 2014 (edited) Такую ошибку выдаёт (лог): 2014-06-18 14:57:13: xvm 1.3.1 (http://www.modxvm.com/) for WoT 0.9.0, 0.9.12014-06-18 14:57:13: Branch: default, Revision: 29942014-06-18 14:57:19: FlashInit: Application.swf2014-06-18 14:57:22: [iNFO] HTTP: /wn8.json2014-06-18 14:57:22: [iNFO] Time: 128 ms, Size: 7051 (39753) bytes2014-06-18 14:57:24: [X:000] LoadFiles: ['xvm.xc']2014-06-18 14:57:24: [X:001] LoadFiles: ['ProTanki/@xvm.xc']2014-06-18 14:57:24: [X:002] LoadFiles: ['ProTanki/statisticForm.xc', 'ProTanki/login.xc', 'ProTanki/vehicleNames.xc', 'ProTanki/iconset.xc', 'ProTanki/battle.xc', 'ProTanki/alpha.xc', 'ProTanki/markers.xc', 'ProTanki/battleResults.xc', 'ProTanki/hangar.xc', 'ProTanki/hitLog.xc', 'ProTanki/squad.xc', 'ProTanki/userInfo.xc', 'ProTanki/rating.xc', 'ProTanki/turretMarkers.xc', 'ProTanki/battleLoading.xc', 'ProTanki/colors.xc', 'ProTanki/texts.xc', 'ProTanki/captureBar.xc', 'ProTanki/hotkeys.xc', 'ProTanki/playersPanel.xc', 'ProTanki/minimap.xc']2014-06-18 14:57:24: [X:003] LoadFiles: ['ProTanki/elements.xc', 'ProTanki/allowHp.xc', 'ProTanki/mirroredVehicleIcons.xc', 'ProTanki/markersDeadExtended.xc', 'ProTanki/markersDeadNormal.xc', 'ProTanki/markersAliveExtended.xc', 'ProTanki/markersAliveNormal.xc', 'ProTanki/enemySpottedMarker.xc', 'ProTanki/playersPanelHP.xc', 'ProTanki/minimapLabels.xc', 'ProTanki/minimapCircles.xc', 'ProTanki/minimapLines.xc']2014-06-18 14:57:24: [X:004] Error loading config file 'ProTanki/markersAliveNormal.xc': TypeError: Error #1009: Cannot access a property or method of a null object reference.at com.xvm.io::JSONxLoader/getValue()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:212]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:176]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:134]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:193]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:134]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:134]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:134]at com.xvm.io::JSONxLoader/Deref()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:134]at com.xvm.io::JSONxLoader/LoadFileCallback()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:88]at com.xvm.io::JSONxLoader/onLoadFileComplete()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:81]at method id: 4()[/home/xvm/xvm-build/repo/src/xvm/src;com/xvm/io;JSONxLoader.as:64]2014-06-18 14:57:24: [X:005] LoadFiles: ['ru.xc']2014-06-18 14:57:24: [X:006] Locale: Loaded ru2014-06-18 14:57:24: [X:007] Config loaded. Region: RU (detected), Language: ru (detected)2014-06-18 14:57:28: [X:008] [XVM] Preloading swf: prebattleComponents.swf2014-06-18 14:57:28: [X:009] [XVM] Preloading swf: companiesListWindow.swf2014-06-18 14:57:28: [X:010] [XVM] Preloading swf: companyWindow.swf2014-06-18 14:57:28: [X:011] [XVM] Preloading swf: squadWindow.swf2014-06-18 14:57:28: [X:012] [XVM] Preloading swf: battleResults.swf2014-06-18 14:57:28: [X:013] [XVM] Preloading swf: battleLoading.swf2014-06-18 14:57:28: [X:014] [XVM] Preloading swf: TankCarousel.swf2014-06-18 14:57:28: [X:015] [XVM] Preloading swf: nodesLib.swf2014-06-18 14:57:28: [X:016] [XVM] Preloading swf: serviceMessageComponents.swf2014-06-18 14:57:28: [X:017] [XVM] Preloading swf: profileStatistics.swf2014-06-18 14:57:28: [X:018] [XVM] Preloading swf: profileTechnique.swf2014-06-18 14:57:28: [X:019] [XVM] Loading mod: xvm-autologin.swf2014-06-18 14:57:28: [X:020] [XVM] Loading mod: xvm-company.swf2014-06-18 14:57:28: [X:021] [XVM] Loading mod: xvm-crew.swf2014-06-18 14:57:28: [X:022] [XVM] Loading mod: xvm-hangar.swf2014-06-18 14:57:28: [X:023] [XVM] Loading mod: xvm-loginlayout.swf2014-06-18 14:57:28: [X:024] [XVM] Loading mod: xvm-ping.swf2014-06-18 14:57:28: [X:025] [XVM] Loading mod: xvm-profile.swf2014-06-18 14:57:28: [X:026] [XVM] Loading mod: xvm-squad.swf2014-06-18 14:57:28: [X:027] [XVM] Loading mod: xvm-svcmsg.swf2014-06-18 14:57:28: [X:028] [XVM] Loading mod: xvm-tcarousel.swf2014-06-18 14:57:28: [X:029] [XVM] Loading mod: xvm-techtree.swf2014-06-18 14:57:30: [X:030] [XVM:HANGAR] processView: battleLoading2014-06-18 14:57:30: [X:031] [battleLoading]XVM_VERSION=5.3.1 for WoT 0.9.1gameRegion=RUconfigVersion=5.1.0showPlayersStatistics=falseuseStandardMarkers=false2014-06-18 14:57:34: FlashInit: battle.swf2014-06-18 14:57:35: FlashInit: VehicleMarkersManager.swf2014-06-18 14:57:37: [V:000] xvm -> ["VMM"]2014-06-18 14:57:37: [V:001] Locale: Loaded ru2014-06-18 14:57:37: [V:002] Config: Loaded2014-06-18 14:57:37: [V:003] xvm -> ["VMM", "VehicleMarkersManager"]2014-06-18 14:57:37: [b:000] xvm -> ["Minimap"]2014-06-18 14:57:37: [b:001] xvm -> ["Minimap", "PlayersPanel"]2014-06-18 14:57:37: [b:002] xvm -> ["Minimap", "PlayersPanel", "TeamBasesPanel"]2014-06-18 14:57:37: [b:003] xvm -> ["Minimap", "PlayersPanel", "TeamBasesPanel", "Battle"]2014-06-18 14:57:37: [b:004] xvm -> ["Minimap", "PlayersPanel", "TeamBasesPanel", "Battle", "StatisticForm"]2014-06-18 14:57:37: [b:005] Locale: Loaded ru2014-06-18 14:57:37: [b:006] Config: Loaded2014-06-18 14:57:38: [b:007] Minimap: localized map name: Р СѓРґРЅРёРєРё2014-06-18 14:57:41: FlashBeforeDelete: VehicleMarkersManager.swf2014-06-18 14:57:41: FlashBeforeDelete: battle.swf Я вот подумал: а не надо этот новый файлик в @xvm.xc описывать? Вот. Может где неправильно прописал чего... "damageText": {"$ref": { "path":"damageText" }},"damageTextPlayer": {"$ref": { "damageText.xc":"damageTextPlayer" }},"damageTextSquadman": {"$ref": { "damageText.xc":"damageTextSquadman" }}, j:\GAMES\World_of_Tanks_RU\res_mods\xvm\configs\ProTanki\damageText.xc : (лежит там-же, где и markersAliveNormal.xc) {"damageTextPlayer": {"visible": true,"x": 0,"y": -67,"alpha": 100,"color": null,"font": {"name": "$FieldFont","size": 27,"align": "center","bold": true,"italic": true},"shadow": {"alpha": 100,"color": "0x000000","angle": 45,"distance": 0,"size": 7,"strength": 200},"speed": 4,"maxRange": 80,"damageMessage": "{{dmg}}\nНА ГАД !!!","blowupMessage": "{{dmg}}\nБАЦ !!!"}, "damageTextSquadman": {"visible": true,"x": 0,"y": -67,"alpha": 100,"color": null,"font": {"name": "$FieldFont","size": 27,"align": "center","bold": true,"italic": true},"shadow": {"alpha": 100,"color": "0x000000","angle": 45,"distance": 0,"size": 7,"strength": 200},"speed": 4,"maxRange": 80,"damageMessage": "{{dmg}}\nНА ДЕРЖИ !!!","blowupMessage": "{{dmg}}\nБАХ !!!"}} Edited June 18, 2014 by _D_V_S_ Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #193688 Posted June 18, 2014 Ошибку надо искать в этом файле: 2014-06-18 14:57:24: [X:004] Error loading config file 'ProTanki/markersAliveNormal.xc': TypeError: Error #1009: Cannot access a property or method of a null object reference. Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193729 Posted June 18, 2014 Ошибку надо искать в этом файле: 2014-06-18 14:57:24: [X:004] Error loading config file 'ProTanki/markersAliveNormal.xc': TypeError: Error #1009: Cannot access a property or method of a null object reference. Перепроверил всё вроде в норме. Убрал перенаправление в файлы, создал секции damageTextPlayer и damageTextSquadman, и прописал так: "damageText": {"$ref": { "path":"damageText" } }, "damageTextPlayer": { "$ref": { "path":"damageTextPlayer" } }, "damageTextSquadman": { "$ref": { "path":"damageTextSquadman" } }, Т.е. на месте "path" было "damageText.xc". И всё заработало... Что-то чувствую что неправильный формат перенаправления в файл был. Было-то так: "damageText": {"$ref": { "path":"damageText" } }, "damageTextPlayer": { "$ref": { "damageText.xc":"damageTextPlayer" } }, "damageTextSquadman": { "$ref": { "damageText.xc":"damageTextSquadman" } }, Вот ведь закавыка :-) Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193938 Posted June 19, 2014 (edited) Кто-нибудь сам делал перенаправление в новый файл? Или на уровне догадок, что должно работать? :-) Когда всё в одном файле - работает прекрасно. Когда делаю перенаправление в новый файл - хрен. Edited June 19, 2014 by _D_V_S_ Quote Share this post Link to post Short link Share on other sites
seriych 2,178 #193942 Posted June 19, 2014 (edited) @_D_V_S_, Если ты используешь полный формат подстановок, то последующие используемые сокращенные форматы будут считать, что надо искать в том файле, который использован в полном формате. Например, пусть в файле markers прописано: "damageText1": { "damageMessage": "тыдыщ", }, "damageText2": { "damageMessage": "тыдыщпыщпыщ", }, "damageText": ${"damageText1"}, // краткая подстановка, ищем в текущем файле, находим подстановку damageText1 "damageTextPlayer": { "$ref": { "damageText.xc":"damageTextPlayer" } // полная подстановка, ищем в файле damageText.xc, находим подстановку damageTextPlayer // остаемся в файле damageText.xc для поиска следующих кратких подстановок! }, "damageTextSquadman": ${"damageText2"}, // краткая подстановка, ищем в файле damageText.xc подстановку damageText2, ничего не находим, убиваемся об стену Edited June 19, 2014 by seriych Quote Share this post Link to post Short link Share on other sites
_D_V_S_ 14 #193950 Posted June 19, 2014 (edited) @_D_V_S_, Если ты используешь полный формат подстановок, то последующие используемые сокращенные форматы будут считать, что надо искать в том файле, который использован в полном формате. Например, пусть в файле markers прописано: "damageText1": { "damageMessage": "тыдыщ", }, "damageText2": { "damageMessage": "тыдыщпыщпыщ", }, "damageText": ${"damageText1"}, // краткая подстановка, ищем в текущем файле, находим подстановку damageText1 "damageTextPlayer": { "$ref": { "damageText.xc":"damageTextPlayer" } // полная подстановка, ищем в файле damageText.xc, находим подстановку damageTextPlayer // остаемся в файле damageText.xc для поиска следующих кратких подстановок! }, "damageTextSquadman": ${"damageText2"}, // краткая подстановка, ищем в файле damageText.xc подстановку damageText2, ничего не находим, убиваемся об стену У меня именно так и было прописано: "damageTextPlayer": { "$ref": { "damageText.xc":"damageTextPlayer" } // полная подстановка, ищем в файле damageText.xc, находим подстановку damageTextPlayer // остаемся в файле damageText.xc для поиска следующих кратких подстановок! И XVM не грузился... Может надо из этого нового файлика какое-то перенаправление обратно в markersAliveNormal.xc прописывать?? А новый файлик этот имел вид: { "damageTextPlayer": { ... ... разные параметры шрифта и тени ... "damageMessage": "{{dmg}}\nНА ГАД !!!", "blowupMessage": "{{dmg}}\nБАЦ !!!" }, "damageTextSquadman": { ... ... разные параметры шрифта и тени ... "damageMessage": "{{dmg}}\nНА ДЕРЖИ !!!", "blowupMessage": "{{dmg}}\nБАХ !!!" } } Сижу голову второй день ломаю... Где-то ошибка в синтаксисе? UPD: только что усмотрел... После предпоследней скобки запятая нужна??? Edited June 19, 2014 by _D_V_S_ Quote Share this post Link to post Short link Share on other sites
sech_92 469 #193959 Posted June 19, 2014 У меня именно так и было прописано: "damageTextPlayer": { "$ref": { "damageText.xc":"damageTextPlayer" } ну почти, только начиналось с сокращённого формата "damageText": { "$ref": { "path":"damageText" } Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #193990 Posted June 19, 2014 @_D_V_S_, Если ты используешь полный формат подстановок, то последующие используемые сокращенные форматы будут считать, что надо искать в том файле, который использован в полном формате. Например, пусть в файле markers прописано: "damageText1": { "damageMessage": "тыдыщ", }, "damageText2": { "damageMessage": "тыдыщпыщпыщ", }, "damageText": ${"damageText1"}, // краткая подстановка, ищем в текущем файле, находим подстановку damageText1 "damageTextPlayer": { "$ref": { "damageText.xc":"damageTextPlayer" } // полная подстановка, ищем в файле damageText.xc, находим подстановку damageTextPlayer // остаемся в файле damageText.xc для поиска следующих кратких подстановок! }, "damageTextSquadman": ${"damageText2"}, // краткая подстановка, ищем в файле damageText.xc подстановку damageText2, ничего не находим, убиваемся об стену Глюк, однако. Надо исправить. Quote Share this post Link to post Short link Share on other sites