[1.011]Mount&Blade Script Enhancer 0.3

Users who are viewing this thread

@mtarini
I will add something like that:
(agent_set_sound, <agent_id>, <sound_constant>,<sound_id>),

sound_constant =  "agent_warcry", "agent_hit" etc.
 
WOW that would be so great!!!!

Actually even more than what we need
(the warcries would be really amazing, but personally I think the rest fits very well the "sound-set-given-by-skins" concept.)



Speaking of sounds, I wonder how it works with hardwired sounds for horses.

One reason of great grief in TLD is that our wargs wolf-like mount creature sound like horses.
To avoid that as much as possible, we silenced down horse sounds as much as possible, and put them back by scripts (most notably neighs) differentiating them.  That's far from being seamless -- in particular gallop sounds could not be helped at all (we tried making a sound for it that didn't sound too wrong with either creature but it is just not feasible).


Apologies for starting to sound like an bottomless pit of requests!
 
Update!
Version 0.3 said:
- Fixed string operations not using string tags correctly ( {reg0} {s0} etc.)
- Added operation is_first_person, set_first_person, agent_get_animation,agent_get_animation_progress, scene_prop_slot_eq, scene_prop_slot_ge, scene_prop_slot_gt, scene_prop_slot_le, scene_prop_slot_lt, scene_prop_slot_add, scene_prop_slot_sub, troop_set_name, troop_set_name_plural,
- Ability to customize agent's sounds by new operation agent_set_sound.

I wanted to add more stuff, but unfortunately I don't have time, so I'm releasing that what I managed to do so far.
 
This is effing epic! Thank you very much. Will be sooo useful for TLD1.011

One thing: the loader does not like Large Address Aware patched exe from enhanced version (vanilla exe is loaded fine). Which is unfortunate, as LAA patching greatly increases MB stability under Win7. Would be supercool if it be fixed sometime in future, if possible.
Also, had to download 2 dlls for it to work (libgcc_s_dw2-1.dll & libstdc++-6.dll)
I used CFF explorer to edit exe under 'File Header>Characteristics>click here> and check "app can handle >2gb address space"
 
Thaess said:
Try this. There shouldn't be any external requirements (other dll than is in .zip) and should be working with LAA.
Nope. This one hangs on launch showing only command window with blinking cursor. With any of the MB exe's. Does not produce any log file either.
 
Oh, forgot to remove this, I used this for some debugging :razz: Just type anything and press enter. Or download again from link from my last post, I've updated it.
 
Ok, my first tries:

MBSE launches correctly, game recognizes the following chunk of code in mission template fine, but sound is not replaced.
Code:
(ti_on_agent_spawn, 0, 0, ....
....
(try_begin),
  (is_mbse_active),
  (display_message, "@MBSE recognized"),
  (agent_set_sound, ":agent", sound_die, "snd_very_noticeable"),
(try_end),

Game consistently crashes after couple minutes in battle with MBSE on (even if no MBSE code in module system). Works fine with MBSE off
Problem signature:
  Problem event name: APPCRASH
  Application name: mount&blade.exe
  Application version: 0.7.3.0
  Application timestamp: 4b2babd7
  Crash module name: mount&blade.exe
  Crash module version: 0.7.3.0
  Crash module timestamp: 4b2babd7
  Exception code: c00000fd
  Exception offset: 00142195
  OS version: 6.1.7601.2.1.0.768.3
  Language code: 1049
  Дополнительные сведения 1: 53b5
  Дополнительные сведения 2: 53b521de7f1c4cec68e1c285d0908514
  Дополнительные сведения 3: 4173
  Дополнительные сведения 4: 4173b9e974c44aada29b66b95093714c
load_map_data complete.
Init_map complete.
init_meta_mission complete.
launch complete.
begin_setup end_setup vdt_normal_map :Out of Static vertex buffer memory. Needed =  173773 Available: 150000
Expanding Buffer Capacity to  217216
vdt_normal_map :Out of Static vertex buffer memory. Needed =  227569 Available: 217216
Expanding Buffer Capacity to  284461

Edit: btw, MBSE still asks for those 2 dll files :wink:
Edit2: translated crash report entries from russian. Pretty standard ones ofc
 
Thaess said:
Does MBSE works fine with original executable? (no LAA)

Same pattern as with LAA exe - crashes after couple minutes in battle with or w/o mbse code in module system.
is_mbse_active is recognized ok, agent_set_sound does not set sound in case of sound_hit or sound_die (tried those 2)
Сигнатура проблемы:
  Имя события проблемы: APPCRASH
  Имя приложения: mount&blade.exe
  Версия приложения: 0.7.3.0
  Отметка времени приложения: 4b2babd7
  Имя модуля с ошибкой: mount&blade.exe
  Версия модуля с ошибкой: 0.7.3.0
  Отметка времени модуля с ошибкой: 4b2babd7
  Код исключения: c00000fd
  Смещение исключения: 00142195
  Версия ОС: 6.1.7601.2.1.0.768.3
  Код языка: 1049
  Дополнительные сведения 1: 53b5
  Дополнительные сведения 2: 53b521de7f1c4cec68e1c285d0908514
  Дополнительные сведения 3: 4173
  Дополнительные сведения 4: 4173b9e974c44aada29b66b95093714c

Some of the sounds do replace successfully after all, e.g. sound_neigh. But sound_die and sound_hit do not. And crashing manifests itself in battles as far as I can see. When I walk in scenes, seems ok, I can walk for quite a time w/o crash
 
Ok so what does this script enhancer allow you to do and is there anything needed to make it run. I dont want to install it without knowing what it will do.
 
Thaess said:
Does this still crashes?
Yup, same behaviour as before, both for original and LAA exes, with or w/o MBSE code inside module system :sad:
Testing some more, it seems that crashes are likely in battles where agent respawning is used. Battles where all agents are on field from beginning run w/o crashes so far

xPearse, read...
 
Well I did read before I posted but I still dont understand. So this allows you to add weapons and props during the game and some other stuff but do you think I would find this useful.
 
@GetAssista
Are you using 64bit system?

@xPearse
It enhances Mount&Blade modding abilities. Some things that can not be done in vanillia, can be done with MBSE.
 
Thaess said:
@GetAssista
Are you using 64bit system?
Yes, Win7 64bit.

If there are any testing procedures you want me to undertake, just ask :smile: I guess right now I'm the one who is most interested in helping make your tool run stable on all MB occurences
 
Thaess said:
@xPearse
It enhances Mount&Blade modding abilities. Some things that can not be done in vanillia, can be done with MBSE.

Yea but what stuff can be done with MBSE that cannot be done in native game.
 
xPearse said:
Thaess said:
@xPearse
It enhances Mount&Blade modding abilities. Some things that can not be done in vanillia, can be done with MBSE.

Yea but what stuff can be done with MBSE that cannot be done in native game.

GetAssista said:
xPearse, read...

Thaess said:
Update!
Version 0.3 said:
- Fixed string operations not using string tags correctly ( {reg0} {s0} etc.)
- Added operation is_first_person, set_first_person, agent_get_animation,agent_get_animation_progress, scene_prop_slot_eq, scene_prop_slot_ge, scene_prop_slot_gt, scene_prop_slot_le, scene_prop_slot_lt, scene_prop_slot_add, scene_prop_slot_sub, troop_set_name, troop_set_name_plural,
- Ability to customize agent's sounds by new operation agent_set_sound.

Changelog
Version 0.1 said:
- New string operations: str_cmp, str_join, str_len, str_reverse, str_substr, str_to_int, str_swap, str_lower, str_upper, str_split, str_is_alpha, str_is_digit, str_get_ascii, str_store_join, str_store_reverse, str_store_substring, str_store_lower, str_store_upper, str_starts_with, str_ends_with.
- is_mbse_active operation
- New trigger: ti_on_agent_hit
Version 0.2 said:
- Added optional parameter "case insensitive" to str_cmp, str_starts_with, str_ends_with
- Added operations: agent_get_item_slot, agent_set_item_slot, agent_get_used_weapon_slot,is_cheat_mode_active, set_cheat_mode, scene_prop_set_slot, scene_prop_get_slot, str_is_empty, store_trigger_param, is_edit_mode_active
- Added item flag itp_lance that allows to couch polearm while on horse (polearms without this flag can not be couched)
- Enchanced trigger ti_on_agent_hit
Trigger Param 1: id of agent that received damage
Trigger Param 2: id of agent that delivered damage
Trigger Param 3: hit damage
Trigger Param 4: hit bone
Trigger Param 5: agent dealer's weapon
Trigger Result: Greater or equal 0 will change the damage
- Fixed bug with storing 32bit values instead of 64.
 
You can use (troop_set_attribute_points, <troop_no>, <value>), and (troop_set_skill_points, <troop_no>, <value>), to set the amount of unspent attribute points you want in WSE. Could we please have this feature in MBSE?
 
Back
Top Bottom