It was like candy, I had to taste it.Oh no, you succumbed to peer pressure
It was like candy, I had to taste it.Oh no, you succumbed to peer pressure
Have you tried the fix I posted on this thread already?The .bat doesn't do anything for me. I don't even see the cmd. prompt flash for second.. Just nothing. Any clues?
Installed battle test before this mod right?The .bat doesn't do anything for me. I don't even see the cmd. prompt flash for second.. Just nothing. Any clues?
Which fix? I only found the No Battlecry version apart from the original post.Have you tried the fix I posted on this thread already?
Installed battle test before this mod right?
This should not be necessary anymore since the content is already in the main download ( unless I forgot something again )Installed battle test before this mod right?
I actually don't know who that guy is but I just Googled him and watched the video. Pretty good video tho, I don't have such a fine system to prevent lags. But I'm not sure why he always referred me as they still But he was referring me and modbed probably.A YouTuber already made a video using this mode, Bloc.
To clarify these two concerns, Battle Logic is heavily played around which impacts the optimization of the mod. This probably won't be same in real game so don't worry.
Let me give an example and technical detail for techjunkies. Battle-winning or running away is controlled in every game tick (around every ms) which definitely changes game smoothness because Agents ( either ally or enemy ) doesn't have onAgentDead or onAgentFlee event. Therefore in every tick, I have to check every agent in the game, to see who's actually winning or not.
Bannerlord doesn't have good event mechanism or OnTick system. Or perhaps I just don't know how to handle those events, maybe they have an extra system that eases the pain.
Cheers. I was too lazy to explain that. I will add it to the first post.Hello everyone, I will tell you how to add your own class to this mod.
My only concern is this, some of the technical problems are not happening because of my implementation. Some of them are happening because of the poor AI or design choice which already embedded in-game which might be still there when the game is done. Let me give you an example. Might be mildly technical though.Yeah, you had a very limited amount of options when working on this. I'm still impressed, despite the technical issues that the mod has. I am really looking forward to seeing what the community can make Bannerlord into.
How to add a new weapon slot and use itHello everyone, I will tell you how to add your own class to this mod.
To get started, go to
steamapps\common\Mount & Blade II Bannerlord - Beta\Modules\BattleTest\ModuleData
there are two files:
mpcharacters - data on units, their equipment and skills
allitems- item data: armor, weapons, horses, etc.
-----------------------------------------------------------------------------
open the mpcharacters file in a text editor
descriptions of each unit begins with the key <NPCCharacter and ends with a key </NPCCharacter>
Between them is a unique id, unit name, skill indicators, as well as a set of weapons, armor, etc.
copy for example the first unit "Ulfrich" and paste at the beginning of the file, immediately after <MPCharacters>
replace id = "mp_character" with a unique name that is convenient for you. Also replace name = "{= eFWJjaBC} Ulfrich"> with a name convenient for you (it will be displayed in the game
Now take care of equipment
open the table editor (in the example I use Excel 2013) and drop the file there: allitems
it should look something like this:
id column - item id, we need them to add our equipment set to our unit
type column - type of items needed to find a type compatible item
at the very right edge of the table, there are id6 and crafting_template columns. they are similar to the previous ones, but apply to weapons
Now I will copy the weapon with the name (id6 column) dolabra and paste it into our mpcharacters text file, for my character, in this example instead of <equipment slot = "Item0" id = "Item.mp_sturgia_heavy_axe" />
I got <equipment slot = "Item0" id = "Item.dolabra" />
by anology, I pick up a helmet, shoulders, armor and a horse (I remind you that the id and type columns are in the left part of the table to help you)
as a result, my character block began to look like this:
<NPCCharacter id = "Apolon" level = "36" name = "Apolon">
<face>
<! - face_key value = "34.12; 0.4; 0.4568; C07C0000001; 11111211161111; 7010000100000; 11101100010100; 7600407111110; 0; 0; 180000" max_value = "68.79; 0.7253; 0.6852; 11FC0FC03C384F; FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ; 0; 309101 "/ ->
<BodyProperties version = "3" age = "20.96" weight = "0.5" build = "0.6" key = "00000C07000000010011111211161111000701000010000000111011000101000000000207111110000000000000000000000000000000000000000000100000" />
<BodyPropertiesMax version = "3" age = "20.96" weight = "0.5" build = "0.6" key = "0011FC0FC03C384FFFFFFFFEFFFBEFFFFFFFFFFFA97EF7FEFFFFEFFFFFFFFFFFFFFF000000FD20AFFFFFF000000000000000000000000000000000000000000289101" />
</face>
<skills>
<skill id = "Riding" value = "200" />
<skill id = "OneHanded" value = "300" />
<skill id = "TwoHanded" value = "300" />
<skill id = "Polearm" value = "200" />
<skill id = "Crossbow" value = "100" />
<skill id = "Bow" value = "999" />
<skill id = "Throwing" value = "100" />
</skills>
<equipmentSet>
<equipment slot = "Item0" id = "Item.dolabra" />
<equipment slot = "Head" id = "Item.merchants_hat" />
<equipment slot = "Cape" id = "Item.battania_cloak_furr" />
<equipment slot = "Body" id = "Item.monk_robe" />
<equipment slot = "Gloves" id = "Item.mp_lamellar_plate_gauntlets" />
<equipment slot = "Leg" id = "Item.mp_lamellar_plate_boots" />
<equipment slot = "Horse" id = "Item.pack_camel" />
</equipmentSet>
</NPCCharacter>
Theoretically, is there no way to implement the sun changing location without relying on delta time/framerate and pre-rendered lightning?Cheers. I was too lazy to explain that. I will add it to the first post.
My only concern is this, some of the technical problems are not happening because of my implementation. Some of them are happening because of the poor AI or design choice which already embedded in-game which might be still there when the game is done. Let me give you an example. Might be mildly technical though.
Sun in the scene is static. Therefore in the current shape, you won't have a battle that started at dawn and ended at mid of the day. Same goes with rain. You won't have heavy rain in the middle of the battle. Because there is only one location to change this right now. That is OnTick method which refreshes itself every ms. When you move sun slightly with delta time, usually you should get a smooth moving animation. But in Bannerlord, that's a dream. Because every single change you do on the light source is impacting already baked lightmap and making your screen shaking for at least 4 seconds to calculate that first move. And when you do it many times to achieve smooth sun rise, you are ending up with an almost unplayable game. But as you can see, whatever I do, this is not possible to achieve. This might not even be achievable for Taleworlds team unless they want to change something in the RGL. ( I'm assuming this is deep embedded in RGL ) And sometimes it's not possible to set winter OnCreate . That's why they have two maps for two different seasons right now. Although, for seasons, they are at least trying their best to add some atmosphere templates that might be applicable to every scene. ( For example Ruins in winter is quite lovely )
Well yes and no. In theory, you are always redrawing the frame anyway. For animations, and non-static objects, shadow layers etc. However, from what I have played around, current Bannerlord RGL is really great at handling this which I'm surprised a lot. Let me give an example about this as well, currently, in RGL, only important pixel regions are getting updated in sense of lightning. Meaning that, let's say you have 1024x1024 resolution, if we divide that into 4, you will have 16 different regions each have 256x256 pixel region. If let's say, nothing is moving in region 1, then region 1 stays same and only polygon data getting drawn onto the screen ( which based on the camera frustum obviously )Which is really logical since you don't need all those areas to get recalculated over and over again, you can just redraw that. But when you change the sun, this affects whole scene which puts a heavy calculation problem on RGL's shoulders. I think to overcome this, they have a flag in scenes saying "IsInterior" which basically tells the engine to chill and not calculate the sunlight effect since it shouldn't matter.Theoretically, is there no way to implement the sun changing location without relying on delta time/framerate and pre-rendered lightning?
Bannerlord does have moving light sources, the however sun is different in this sense because the sun's location also effects HDRI, overall ambient colour, AO maps ( I'm assuming that's also getting calculated on runtime with SSAO) and so on. That's why changing this is problematic and every split second, engine has to recalculate all these.know that movable light sources in Unreal are updated in real-time, so you need to build the lighting only once.
It's not that simple, unfortunately. UE4 is whole another topic. Just because they are both written in C++ doesn't necessarily mean that they can do the same. In theory, they can. But in practice, that's not possible. You don't have to go that far and just compare Uniity vs UE4 for example. Both C++/C and there are clear differences in between. I haven't read the RGL source code - and its not actually open source, therefore I can't comment on that. But I can say that, don't wait anything like this. It's just hard.Since both UE4 and Bannerlord engine are using C++ it should be possible, right? What would it take to make a similar implementation in Bannerlord?
As far as I know and see, RGL is Monolith as hell. So you can't do custom changes on that. But why would you? I mean that's the graphics engine anyway. But you can always tier up your game with changing shaders, postfx implementations. For example, moving sky wasn't part of Warband and handled quite well with Shader implementation. Same can be applied to Bannerlord in the future. Or perhaps its already implemented by Taleworlds.Would the modder have to make a custom RGL or is this similar to hardcoded design decisions we saw in Warband?