[WB] Warband Script Enhancer v4.7.7 for 1.174

K700

Knight at Arms
WB
Best answers
0
Warband Script Enhancer for latest version of Warband (current 1.174)

What is the Warband Script Enhancer?
A program that enhances the Warband engine by adding operations/scripts/triggers and changing hardcoded game mechanics. Also fixes some engine bugs.

In the new warband updates were about 10% functional of WSE. Since the development of WSE the abandoned by author, I decided to port WSE of their own under the new patches. It's hard work to reverse engineering and time-consuming. And my knowledge is not so great like a cmpxchg8b. So I'll be grateful for help.

Steam exe currently not supported! Also Taleworlds silently updated 1174 exe from istaller.
So use 1174 exe from this post!



Downloads

Mercurial repository
WSE v4.7.7 (for Warband 1.174)
1.174 exes
PHP ogp and rcon classes
C# rcon
Python rcon


Installation

Users
1. Download WSE
2. Extract the files anywhere
3. Edit wse_settings.ini
4. Run WSELoader

Modders
1. Download WSE
2. Enhance the Module System with the files in the WSESDK directory (see README.txt for more information)
3. Package WSE in your mod download


Changelog:
v4.7.7
-Added agent_set_footstep_sound operation.

Previous versions
v4.7.6
-Restored female frame support for boots.
-Added ti_on_init_item trigger for boots.
-Added ti_on_scene_prop_is_deforming trigger.
-Added itp_covers_hands item flag.
-Added all scene prop triggers support for add_point_light, particle_system_add_new, particle_system_remove, set_forced_lod operations.


v4.7.5
-Added acf_lock_rotation animation flag.

v4.7.4
-Added agent_body_meta_mesh_deform_in_range, agent_body_meta_mesh_deform_in_cycle_loop, agent_body_meta_mesh_get_current_deform_progress, agent_body_meta_mesh_get_current_deform_frame operations.

v4.7.3
-Extended agent_set_animation_progress operation.

v4.7.2
-Added dict_delete_file_json operation.
-Array bugfixes.


v4.7.1
-Restored get_camera_position operation.
-Extended agent_accelerate operation.
-Fixed item_set_horse_blood_particles operation.
-agent_get_item_cur_ammo and agent_get_ammo_for_slot operations takes any item slot.
-Removed admin privilege from WSELoader.exe
Lua:
-Added stack traces for error messages
-Clear lua stack when it reaches 100 to prevent stack overflows
-Bug fixes for hex constant parser, presentation triggers, os.rename
-Return values in module triggers now optional
-Added lua callback for chat messages (game.OnChatMessageReceived)
-Few additions to vector3 and game.pos
-Read luaGuide for details


v4.7.0
-Ported to 1.174.

v4.6.1
-Added operation agent_add_stun.
-Added game.fail which will trigger a ms op fail in lua_call.
-Added ini settings option "disable_game_const_warnings" that mutes warnings during msfiles folder scanning.


v4.6.0
-Ported to 1.173.

v4.5.6
-Fixed and restored operations break_loop, continue_loop, try_for_dict_keys. (requires allow_wse_execute_statement_blocks = 1 in module.ini)
-Lua iterator game.propInstI now work as exactly like try_for_prop_instances.
-Response for http request for server info now sends correct headers and opens on any browsers. (http://server_ip:server_port/)
-Added script wse_get_server_info.
-Bug fixes.


v4.5.5
-Added item trigger for lua.
-Skins use their own blood particles.
-Added operation item_set_horse_blood_particles.


v4.5.4
-More skins support for multiplayer profile. Required network_compatible = 0.
-Limit for multiplayer gold increased to 1000000000. Required network_compatible = 0.
-Added operation multiplayer_cur_profile_get_skin.


v4.5.3
-Restored function of profiler.
-Fixed precision loss for agent_get_animation_progress, agent_get_scale, fst, get_water_level, party_stack_get_experience, position_get_vector_to_position, overlay_get_val operations. And for triggers: max rotation speed for ti_on_agent_turn and raw damage for ti_on_agent_hit.


v4.5.2
-Fixed precision loss for agent_get_..._modifier operations.
-Added operation agent_get_ranged_damage_modifier.


v4.5.1
-Fixed lua game.call_script not working for some reason.
-Added operation dict_erase.


v4.5.0
-Lua scripting support.
-Added operation send_post_message_to_url_advanced.
-Fixed operation dict_from_url_encoded_json.
-Operation dict_to_url_encoded_json now created json is writen in a single line.


v4.4.4
-Added script wse_savegame_loaded.

v4.4.3
-Added dict_from_url_encoded_json, dict_to_url_encoded_json and str_decode_url operations.

v4.4.2
-Added dict_load_file_json and dict_save_json operations.

v4.4.1
-Fixed crash with AgentAttackCollidesWithPropHook.

v4.4.0
-Ported to 1.170.

v4.3.7
-Repaired and enabled operation set_prop_collision_threshold.
-Implemented Signature Scanner. Technical tool to ease porting.


v4.3.6
-Fixed bug: ogp_server crashes with long map filenames.
-Removed limit for troop_set_attribute.


v4.3.5
-Added trigger: ti_on_agent_turn.

v4.3.4
-Added fadd operation.
-Re-fixed dropped items with high ids not being displayed correctly on clients (bug #3157, fix available only in non network compatible mode)


v4.3.3
-Fixed array bugs.
-Added operations: array_eq, array_neq, array_gt, array_ge, array_lt, array_le.


v4.3.2
-New feature: magic dynamic n-dimensional typeless arrays.
-Added operations: player_temp_ban, dict_get_pos, dict_set_pos, str_regex operations, array operations.


v4.3.1
-Agent's personal animation feature.
-Added operations: agent_set_personal_animation, agent_get_personal_animation, agent_set_default_animations, agent_cancel_current_animation.


v4.3.0
-Enabled trigger ti_on_agent_end_reloading.
-Fixed trigger ti_on_agent_start_reloading for client.
-Fixed flag itp_shield_no_parry, left-handed item no more block couched lance.
-Fixed flag itp_disable_agent_sounds, horses no more play snd_horse_snort.


v4.2.9
-Added trigger: ti_on_agent_blocked.
-Added item flag: itp_shield_no_parry.
-Added operation: str_store_item_mesh_name.


v4.2.8
-Added new operation: agent_body_meta_mesh_set_visibility.

v4.2.7
-Added scene prop flag sokf_weapon_knock_back_collision.
-Removed operations camera_in_first_person and set_camera_in_first_person,
because already implemented ingame.


v4.2.6
-Added module.ini option: fix_bots_blocking_for_dedicated_server (fix bots blocking issue on dedicated manual block servers).
-Added new operation: make_screenshot.


v4.2.5
-New feature: set difficulty requirement for item types (attributes and skills, check module.ini_addon.ini).

v4.2.4
-Added new operation: agent_body_meta_mesh_set_vertex_keys_time_point.
-Enabled item_set_ operations.


v4.2.3
-Fixed tactical_window gamedata and operations get_spectated_agent_no, order_flag_is_active, presentation_activate.
-OGP server sends more info: BotCount, PlayerID (unique_id), PlayerClass (troop).


v4.2.2
-Source RCON Protocol implementation for dedicated server.
-Added new operations: server_set_password_rcon, str_store_server_password_rcon, execute_server_console_command.


v4.2.1
-Enabled network features: hide_other_mod_servers, network_compatible, more skins in multiplayer, composite network messages; player_set_skin, player_stop_controlling_agent, horse_friendly_fire and show_crosshair operations.
-Added new operation: str_store_multiplayer_profile_face_keys.
-Added more skins support for OGP Server.


v4.2.0
-Ported to 1.168

v4.1.0
-Added module.ini option: module_download_url.
-Added "missile no" parameter for ti_on_init_missile and ti_on_missile_dive triggers and game_missile_dives_into_water script.
-Added new operations: missile_is_valid, missile_get_cur_position.
-Operation cur_missile_get_path_point_position replaced with missile_get_path_point_position.


v4.0.9
-Enabled operation update_material.
-Disabled AgentAttackCollidesWithPropHook, which caused a crash on some systems (and the associated operation set_prop_collision_threshold).
-Operations agent_get_item_slot_ammo and get_camera_position removed, because already implemented ingame (agent_get_ammo_for_slot and mission_cam_get_position).


v4.0.8
-Repaired play_bink_file operation.
-Fixed party's gamedata (also wse party's operations).
-Added set_main_party and get_main_party operations. Important! set_main_party with dynamic spawned party (not listed in module_parties.py) will corrupt the savegame!


v4.0.7
-Disabled unstable OperationManagerExecuteHook, that was causing server crashes. So operations go_to, break_loop, continue_loop, extended try_for_agents and try_for_dict_keys no longer work.
-For the replacement operation try_for_dict_keys added operation dict_get_key_by_iterator.
-Fixed operation player_set_username.
-Added WSELoader with Windows XP compatible.


v4.0.6
-Operations prop_instance_clear_attached_missiles and edit_mode_in_edit_objects_mode removed, because already implemented ingame.
-Working module.ini option: use_missile_damage_type.
-Added new wse_setting.ini option to specify a port for listen server.
-Working set_show_use_tooltip operation.
-Enabled scripts: wse_get_agent_scale, extended game_missile_dives_into_water.
-Enabled triggers: ti_on_scene_prop_stepped_on, ti_on_agent_start_reloading, ti_on_missile_dive, extended ti_on_agent_hit.
-Enabled item flags: itp_offset_mortschlag, itp_offset_flip.
-Enabled operations: set_ally_collision_threshold, set_prop_collision_threshold.


v4.0.5
-Fixed structure mission_object.
-Working module.ini option: use_missile_damage_type.
-Enabled operations: send_message_to_url_advanced, process_advanced_url_messages, multiplayer_send_chat_message_to_player, extended prop_instance_receive_damage, add_point_light, particle_system_add_new, mission_cam_set_aperture.
-Enabled triggers: ti_on_init_missile, ti_on_init_item for horses.


v4.0.4
-Fixed range for StringOperations.
-Added scripts: wse_console_command_received, wse_chat_message_received, wse_game_saved, wse_window_opened.
-Working option: max_corpses.
-Working feature: ogp_server.
-Fixed bugs:eek:gp_server crashes with long data strings and not show maps filename.


v4.0.3
-Structure of data is completed. Found most of offsets for hooks.
-Enabled operations: InputOperations, MenuOperations, PresentationOperations, some MultiplayerOperations, MissionOperations, CoreOperations and StringOperations.


v4.0.2
-Fixed operation try_for_prop_instances.
-Added new operation: shell_open_url.


v4.0.1
-Refixed OperationExecuteHook - repair CF operators.
-Working module.ini option: ground_weapon_collision.
-Enabled most operations: CoreOperations, AgentOperations, EditModeOperations, FloatingPointOperations, MathOperations, NetworkOperations, OptionsOperations, PartyOperations, PlayerOperations, PositionOperations, SiteOperations, StringOperations, TroopOperations.
-Added new operation: player_set_username.


v4.0.0
-Start porting wse to 1166.


FAQ:

How do I know the executable is not a virus?
It's open source.

Isn't modifying/cracking game files illegal?
No game file is modified, at all.

Does this allow people who don't own Warband to play?
No.

When I try to run it, it says that a .dll file is missing.
Since version 1.020 there should be zero external dependencies. If you have unpacked the whole archive and still keep getting errors you can try installing the Microsoft Visual C++ 2013 Redistributable Package (x86).

My game crashes/shows weird errors.
Post here and paste the contents of the wse_log.txt, wse_crash_log and rgl_log.txt files in your game directory.

My log file has entries like WARNING: Unable to map WSE script code ...
Unless you're a modder, you can safely ignore warnings. It just means the current mod is not using all of WSE's features.

I want to add WSE to my mod. What do I do?
Add the required WSE files to your mod download. The latest version linked here might not be compatible with the one you used to compile the mod.


Credits:

- cmpxchg8b, initial WSE developer
- AgentSmith, some new feature, Lua scripting support

External software:

- muParser
- Open Game Protocol
- Source RCON Protocol
- JsonCpp
- TinyXML-2
- Visual Studio 2013
- IDA Pro
- TortoiseHg


Disclaimer:

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


You can support developing by Paypal
 
Last edited:

WookieWarlord

Master Knight
WBNW
Best answers
0
I don't think I can help you with this at all, but I just want to wish you the very best of luck because this task is one that benefits the entire modding community, including myself.
 

Ikaguia

Grandmaster Knight
WBWF&SNW
Best answers
0
WookieWarlord said:
I don't think I can help you with this at all, but I just want to wish you the very best of luck because this task is one that benefits the entire modding community, including myself.
 

K700

Knight at Arms
WB
Best answers
0
Updated. Fixed OperationExecuteHook. Enabled operators: go_to, break_loop, continue_loop, extended try_for_agents, try_for_dict_keys, is_vanilla_warband, extended store_trigger_param, register_get, register_set, store_wse_version, all dictionary operators. Untested!
WSE v4.0.0 (for Warband 1.166)
Please test this build and report me, if you find bugs or game crashed. Steam currently unsupported.
 

KruKk

Recruit
Best answers
0
say waaaaaaaaaaaaat?

thank you meng for doing the lord's work.

p.s. spot 4 sale
 

K700

Knight at Arms
WB
Best answers
0
Updated.

-Refixed OperationExecuteHook - repair CF operators.
-Working module.ini option: ground_weapon_collision.
-Enabled most operations: CoreOperations, AgentOperations, EditModeOperations, FloatingPointOperations, MathOperations, NetworkOperations, OptionsOperations, PartyOperations, PlayerOperations, PositionOperations, SiteOperations, StringOperations, TroopOperations.
-Added new operation: player_set_username.

WSE v4.0.1 (for Warband 1.166)
Please test this build. I did not test most operations.
 

K700

Knight at Arms
WB
Best answers
0
Updated

-Fixed operation try_for_prop_instances.
-Added new operation: shell_open_url.

WSE v4.0.2 (for Warband 1.166)

Although part of the operations will probably not work, bugs in the game should not be. So you can use this version in your mods, if you wish.
 

K700

Knight at Arms
WB
Best answers
0
Updated

-Structure of data is completed. Found most of offsets for hooks.
-Enabled operations: InputOperations, MenuOperations, PresentationOperations, some MultiplayerOperations, MissionOperations, CoreOperations and StringOperations.

WSE v4.0.3 (for Warband 1.166)

Please report if you find broken operations.
 

SnRolls

Sergeant at Arms
WB
Best answers
0
K700 said:
Updated

-Structure of data is completed. Found most of offsets for hooks.
-Enabled operations: InputOperations, MenuOperations, PresentationOperations, some MultiplayerOperations, MissionOperations, CoreOperations and StringOperations.

WSE v4.0.3 (for Warband 1.166)

Please report if you find broken operations.
Definetly gonna use this in my mod now!
player_set_username gonna be useful for a clan system  :grin:

Edit:
Can't use it... says im using an old version, im using 1.165 cuz there is no module system for 1.166...
 

Lav

Sergeant Knight at Arms
M&BWB
Best answers
0
Warband 1.166 patch is still using 1.165 module system. So you just need the latest game patch.
 

K700

Knight at Arms
WB
Best answers
0
Updated
-Fixed range for StringOperations.
-Added scripts: wse_console_command_received, wse_chat_message_received, wse_game_saved, wse_window_opened.
-Working option: max_corpses.
-Working feature: ogp_server.
-Fixed bugs:eek:gp_server crashes with long data strings and not show maps filename.

WSE v4.0.4 (for Warband 1.166)

Please report if you find bugs or game crashes.
 

SnRolls

Sergeant at Arms
WB
Best answers
0
Lav said:
Warband 1.166 patch is still using 1.165 module system. So you just need the latest game patch.
Im telling you it doesnt work for me, ive updated my module system with how you said in your topic: put the headers and process files. (was using 1.158 module system)
and i put my new game files on my linux server and started the server...
writes this:
Game executable origin: command line
Game executable path: mb_warband_dedicated.exe
Game executable checksum: 20925869
fixme:ver:GetCurrentPackageId (0x33e414 (nil)): stubSE only supports version 1.166).

                                                    Please update or download the full game from http://www.taleworlds.com/download.aspx.
 

Lor Dric

Marquis
M&BWBWF&S
Best answers
0
Doesn't work for my heraldic horses, hopefully you will get this developed all the way. Keep up the good work.
 

K700

Knight at Arms
WB
Best answers
0
I have been doing heraldic horse at the moment, this ASM hook must rewrite