и получить нужный материал
Я не о 3д материале тут говорил.
секатор (https://rusmnb.ru/index.php?action=profile;u=65), .tch на сколько я видел идет ввиде запакованных ассетпаков, в нем инфа о матереале, меш трансформе, скелете и тд и тп. Это не меш файл отдельно. Не утверждаю пока мало что можно сказать.
Еще в ресурсах встречаеться .trf, это скорее всего как .brf. (Resource file) Но я не знаю есть ли такое подобие архивов в бете.
(https://imgur.com/jQFZrgN.png)
Как без пибиара то 2020 на дворе. 1.50 минута.
https://youtu.be/k2C0KkkNGhs
Так что рипнуть это покачто единственный видимый вариант, рипать можно и не в базовой позе. Зависит от движка. Рипаеться в Т позе аш бегом. Можно хексами всякими пробовать но уж както все сложно получаеться на таких ранних этапах.
Бейз меш (женский) Bannerlord https://drive.google.com/open?id=1NquT12ZToz7bbq2OlCl6sViZJUfO9kcX (https://drive.google.com/open?id=1NquT12ZToz7bbq2OlCl6sViZJUfO9kcX) (не сшивал, т.е. какие части идут отдельно голова, тело, руки, ноги и т.д. так и есть). Верхняя ось Y.
(https://i.imgur.com/diHjrs9.png)
Мужской https://drive.google.com/open?id=1Urmb3WEs1WjVMTmcmdcy5mQsqP-qirq8 (https://drive.google.com/open?id=1Urmb3WEs1WjVMTmcmdcy5mQsqP-qirq8)
(https://i.imgur.com/34s0rjA.png)
Все естественно в ознакомительных целях :)
Есть идейка: можно выписать классы, используемые в движке. (C++, как .h-файлы - без имплементации). Я знаю как это сделать. Ток будет ли это кому-то нужно?
Я думаю это востребовано. Я , например, всегда читаю подобные туториалы, потому-как в технической части я лабух и разбираюсь прежде всего по ним.
Если кто-то попросил, то можно и запилить.
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace RglParser
{
class Program
{
private static Dictionary<string, List<string>> _classes = new Dictionary<string, List<string>>();
static void AddMethod(string @class, string method, string retval)
{
if (!_classes.ContainsKey(@class)) _classes[@class] = new List<string>();
method = method.Replace("struct rgl", "rgl") + ";";
method = Regex.Replace(method, "\\@<.*?>", ""); //remove regiters
if (method.StartsWith("~")) _classes[@class].Add(method); //destructor
else if (method.StartsWith(@class + "(")) _classes[@class].Add(method); //constructor
else _classes[@class].Add(retval + " " + method);
}
static string ClassToString(string @class)
{
var sb = new StringBuilder();
sb.AppendLine("class " + @class);
sb.AppendLine("{");
sb.AppendLine("public:");
foreach (var method in _classes[@class])
{
sb.AppendLine(" " + method);
}
sb.AppendLine("};");
return sb.ToString();
}
static void ParseDeclaration(string str)
{
try
{
var lexems = str.Split(new[] { " ", "(" }, StringSplitOptions.None);
if (lexems[0] == "this") lexems = lexems.Skip(1).ToArray();
if (!lexems[2].Contains("::")) return;
var className = lexems[2].Split(new[] { "::" }, StringSplitOptions.None)[0];
var methodName = lexems[2].Split(new[] { "::" }, StringSplitOptions.None)[1];
var a = str.IndexOf('(');
var b = str.IndexOf(')');
a++;
b--;
var parametersStr = str.Substring(a, b - a + 1);
var parameters = parametersStr.Split(new[] { "," }, StringSplitOptions.None).Select(s => s.Trim());
/*if (parameters[0].Contains("this"))*/ parameters = parameters.Skip(1).ToArray();
AddMethod(className, methodName + "(" + String.Join(", ", parameters) + ")", lexems[0]);
}
catch { }
}
static void Main(string[] args)
{
//Rgl.dll.c дать офк не могу.
var lines = File.ReadAllLines("E:\\Rgl.dll.c").Take(19060).Where(x => x.Contains("rgl"))
.Select(x => x.StartsWith("// ") ? x.Remove(0, 3) : x);
foreach (var line in lines) ParseDeclaration(line);
var f = new StreamWriter("rgl.h");
foreach (var c in _classes.Keys) f.WriteLine(ClassToString(c));
f.Close();
}
}
}
В zip-архиве rgl.h - файл с классами.
Не учтено наследование (некоторые классы могут быть наследниками других). Также могут быть глобальные методы для работы с классами.
Vanok (https://rusmnb.ru/index.php?action=profile;u=1),Чет мне кажеться темный он у тебя такой не изза настроек сцены и материала. Попробуй этот меш, я пофиксил чуть нормали они там были странно инвертированные (походу издержки рипа) надо было перересетить.
(https://i.imgur.com/IOPjHTt.png)
Janycz (https://rusmnb.ru/index.php?action=profile;u=20234), думаю и до скелета дойдем. Пока даже в тот злючий редактор даже попасть не получается (такое чувство что его вообще в текущем билде нет), хотя некоторые пишут что вроде есть. The current build of the beta has a scene editor, by enforcing it on the game it still says the scene editor is disabled so i would guess its hard wired in the current beta build.
В самом коде есть упоминания Replay Editor, Scene Editor (но нет Model Viewer, Cloth Editor и т.д.). Возможно что первые идут как инструменты Edit Mode вместе с движком, другие же придется качать отдельно (кого тейлы дадут конечно их).
толстого худого
Толстых и худых (временно?) убрали. Сейчас по факту есть ползунок роста, который скейлит персонажа туда или обратно (при этом пропорции остаются те же).
Может быть из за этих ребят https://www.youtube.com/watch?v=EEB-mbl6hQQ (https://www.youtube.com/watch?v=EEB-mbl6hQQ)
или потому что хитбоксы никакие и они их постоянно меняют.
А чем конкретно? Если посмотреть ради можно (там не много интересного пока). Если свою сделать, то это так же возможно (просто меняйте список доступных ассетов в references.xml и их положение в scene.xscene). С ландшафтом сложнее, так как он в .bin файле (возможно есть способ переконвертировать его в карту высот, но я такого не знаю).
Вот чисто мои находки:
Сцена из видео о движке (Руины)
(http://tw.greywool.com/i/H19_g.png)
(http://tw.greywool.com/i/jG6rU.png)
(http://tw.greywool.com/i/HSUeL.png)
Неизвестная карта для тдм
(https://cdn.discordapp.com/attachments/394055433641263109/651757018025295892/unknown.png)
(https://cdn.discordapp.com/attachments/394055433641263109/651757668502863892/unknown.png)
(https://cdn.discordapp.com/attachments/394055433641263109/651757924053680148/unknown.png)
Сержант мап какая то (номер не помню)
(http://tw.greywool.com/i/VSLnl.png)
(http://tw.greywool.com/i/vBWtf.png)
(http://tw.greywool.com/i/pYilL.png)
Upd. Ну и еще немного:
Имперский порт
(https://cdn.discordapp.com/attachments/394055433641263109/652590747769634857/mb11.png)
(https://cdn.discordapp.com/attachments/394055433641263109/652590757718523923/mb13.png)
И виг вам на опушке
(https://cdn.discordapp.com/attachments/394055433641263109/652594138696646659/mb0.png)
(https://cdn.discordapp.com/attachments/394055433641263109/652594142026924062/mb5.png)
Vanok (https://rusmnb.ru/index.php?action=profile;u=1), если под "погулять" вы имеете ввиду побегать, то увы это не возможно (максимум полетать, и то при условии что сервер пустой. я обычно использую китайский сервер). Инструкций каких то особо нет, как уже скидывал ранее вот https://forums.taleworlds.com/index.php/topic,387600.0.html (https://forums.taleworlds.com/index.php/topic,387600.0.html) (некоторые карты не рабочие, по этому вам самим нужно лезть в .xscene и в <entities></entities> искать не работающий префаб, тупо перебирая их).
Upd. ан нет, судя по всему можно https://youtu.be/SjfQAD36BQQ
А тем временем, появились еще видео. Вряд ли конечно они выложат свой мод также как китаец, но всякое может быть. Полноценные юнити из сингла, рабочий ИИ перемещения войск.. Почти сингловые битвы получаются. Ну и редактор баннеров (его вроде не будет в раннем доступе или вообще вырежут, не уверен).
https://youtu.be/x_sGJepLWGc
Bannerlord realistic battlefield - YouTube (https://youtu.be/qPlzSbzm8p0#)
Mount and blade Bannerlord 2: Flag editor Random - YouTube (https://youtu.be/XmDk_627zDc#)
Дописал к китайцу в мод Scene selector, теперь можно не отходя от кассы менять сценки и тестить, список сцен кастомный (xml), пока закинул туда только те сцены что точно работают.
Гифка
(https://i.imgur.com/nnHkqkX.gif)
Обновил до версии BattleTestExtended (https://mega.nz/#!HCImgAAS!LK5pbSXMAIvgmZACTHU2eV1Wi9TNAzE2yPaf9bgnSI0)0.3.1.
Добавил выбор пола перед стартом и настройки освещения для солнца.
(https://i.imgur.com/uQdOCBF.png)
Обновил до версии BattleTestExtended (https://mega.nz/#!aHByxCzL!GPUMBS25Yh3Y-mjD0_dDBtSp9YdYqlSGLomgEMYNW4Q) 0.3.2
Теперь можно задавать кастомные позиции для спавна отрядов также поворот строя, прям на сцене, просто перегрузив сцену. Новые координаты задаються исходя из текущей камеры.
Info:
(https://i.imgur.com/5FhB2B2.png)
Гифка
(https://i.imgur.com/8zg81QN.gif)
Кстати , все модели броньки вот в этом файле записаны :crazy: ??
(http://img.offtopicbooks.com/images/blitms22.jpg)
думается)) ,данная "ошибка" в названии броньки правится уже в другом файле, в папке Language
(http://img.offtopicbooks.com/images/blr22.jpg)
Работать со скелетами в каком смысле? подгружать свои? или что имеется ввиду?
У меня гоовняк назрел один, не могу модель подгрузить с привязкой к скелету.
1. экспортирую модель в формате .dae из TpacTools
2. Импортирю ее в Блендер, привязываю скелет к модели и экспортирую все в .fbx
3. Запускаю редактор импортирую модель .fbx результат: подгружается только скелет =((
4. Если импортировать модель без скелета, то все ок, за исключение отсутвия привязки к скелету(
(http://tw.greywool.com/i/mFnhN.png)
(http://tw.greywool.com/i/npfia.png)
dmitriyewich ([url]https://rusmnb.ru/index.php?action=profile;u=34729[/url]), чет как-то сумбурно. Что конкретно ты хочешь сделать?
Мне нужно изменить параметры стрел.
В стандартном weapons.xml, который в SandBoxCore находится выглядит так.
<Item id="bodkin_arrows_b"
name="{=SbARa2gU}Bodkin Arrows"
body_name="bo_capsule_arrow"
holster_body_name="bo_axe_short"
mesh="arrow_bl_c"
holster_mesh="arrow_bl_c_quiver"
holster_mesh_with_weapon="arrow_bl_c_quiver"
weight="0.048"
flying_mesh="arrow_bl_flying"
appearance="1"
Type="Arrows"
item_holsters="quiver_back_middle:quiver_bolts_2:quiver_bolts"
holster_position_shift="0.0,0.0,0.15">
<ItemComponent>
<Weapon weapon_class="Arrow"
stack_amount="24"
thrust_speed="0"
speed_rating="0"
physics_material="missile"
missile_speed="10"
weapon_length="97"
thrust_damage="3"
thrust_damage_type="Pierce"
item_usage="arrow_right"
passby_sound_code="event:/mission/combat/missile/passby"
rotation="0, -80, 25"
sticking_position="0,-0.97,0"
sticking_rotation="90,0,0"
center_of_mass="0,0,-0.13"
modifier_group="arrow">
<WeaponFlags Consumable="true"
AmmoSticksWhenShot="true"
AmmoBreaksOnBounceBack="true" />
</Weapon>
</ItemComponent>
<Flags />
</Item>
Мне же надо изменить вес, урон, количество стрел, флаги.
<Item id="bodkin_arrows_b"
name="{=SbARa2gU}Bodkin Arrows"
body_name="bo_capsule_arrow"
holster_body_name="bo_axe_short"
mesh="arrow_bl_c"
holster_mesh="arrow_bl_c_quiver"
holster_mesh_with_weapon="arrow_bl_c_quiver"
weight="0.048"
flying_mesh="arrow_bl_flying"
appearance="1"
Type="Arrows"
item_holsters="quiver_back_middle:quiver_bolts_2:quiver_bolts"
holster_position_shift="0.0,0.0,0.15">
<ItemComponent>
<Weapon weapon_class="Arrow"
stack_amount="32"
thrust_speed="0"
speed_rating="0"
physics_material="missile"
missile_speed="10"
weapon_length="97"
thrust_damage="6"
thrust_damage_type="Pierce"
item_usage="arrow_right"
passby_sound_code="event:/mission/combat/missile/passby"
rotation="0, -80, 25"
sticking_position="0,-0.97,0"
sticking_rotation="90,0,0"
center_of_mass="0,0,-0.13"
modifier_group="arrow">
<WeaponFlags Consumable="true"
AmmoSticksWhenShot="true"
AmmoBreaksOnBounceBack="true"
CanPenetrateShield="true" />
</Weapon>
</ItemComponent>
<Flags />
</Item>
Как мне это сделать без изменения weapons.xml? То есть как дополнительным модом внести изменения? Получается только новый предмет создать, а существующий не могу изменить.
upd
Собственно, вот как я делал.
(https://i.ibb.co/zQQSc8s/clipboard.png)
Архив прикрепил
Oltopeteeh (https://rusmnb.ru/index.php?action=profile;u=17272), спасибо! Не додумался загружать раньше SandBoxCore. Внёс изменения в SubModule.xml для того чтобы сразу выставлялся перед SandBoxCore.
<Module>
<Name value="ArrowTest"/>
<Id value="ArrowTest1"/>
<Version value="v1.1.3"/>
<ModuleCategory value="Singleplayer"/>
<SingleplayerModule value="true"/>
<DefaultModule value="false"/>
<MultiplayerModule value="false"/>
<Official value="false"/>
<DependedModules />
<ModulesToLoadAfterThis>
<Module Id="SandBoxCore" />
</ModulesToLoadAfterThis>
<!-- Community Dependency Metadata -->
<!-- [url]https://github.com/BUTR/Bannerlord.BUTRLoader#for-modders[/url] -->
<DependedModuleMetadatas>
<DependedModuleMetadata id="SandBoxCore" order="LoadAfterThis" optional="true" />
</DependedModuleMetadatas>
<SubModules> </SubModules>
<Xmls>
<XmlNode>
<XmlName id="Items" path="enchanted_arrow"/>
<IncludedGameTypes>
<GameType value = "Campaign"/>
<GameType value = "CampaignStoryMode"/>
<GameType value = "CustomGame"/>
</IncludedGameTypes>
</XmlNode>
</Xmls>
</Module>
Теперь всё хорошо.
(https://i.ibb.co/fG0dny8/screenshot-2023-05-03-17-03-02-002.png)
potap (https://rusmnb.ru/index.php?action=profile;u=41), для меня это дебри, может когда-нибудь разберусь.