[WB] Warband Script Enhancer v3.2.0 (21/07/2013)

Users who are viewing this thread

Status
Not open for further replies.
the_prince258 said:
does Warband Script Enhancer work on trial mode because i have mb warband vr 1.134 trial
but when i put the crack and open wseloader it show error "Unrecognizd  warband version"

Unless you bought Warband that is illegal.... I'm sure you know that, but what I don't understand is why you are posting that you got the WB crack on the Dev's Forums....

 
Ikaguia said:
an (agent_get_hand_position, <destination>, <agent_no>, <left/right_hand>), and an (agent_get_foot_position, <destination>, <agent_no>, <left/right_foot>),  would be good, and it seems the engine uses it to equip the items...

Or an (agent_get_bone_position, <dest>, <agent_not>, <bone>) with a list of constants for different bones.
 
I've searched this topic, but I couldn't find an answer. Maybe I'm blind.  :wink:

Is it able to run WSE on Linux server via Wine?
 
I'm going to assume that Wine is an emulator. If it is, I would assume that WSE can run through it.

It won't hurt to try it though, if you download the 5-10 mb file and run the exe once you unzip, you'll find out.
 
Is this possible to make a trigger in mission_templates for blocking attacks? For example ti_on_agent_block or something to check if current agent is blocking incoming attacks. One of the params could be for a check blocking agent, another one for attacker (I don`t know why, but who knows?) and maybe position for a weapon or something like that (but this can be check from bones so it`s not necessary).
edit: maybe one of the params could be for a type of the weapon, like one handed sword or blunt weapon.
 
SaddamAZR said:
Is it able to run WSE on Linux server via Wine?
It has unfortunately never worked for me (gentoo amd64), but I think cmpxchg8b said it worked for him in a VM running ubuntu, or something. Just try it and report what happens, since it may work.
WSE Loader by cmpxchg8b (Build date: Aug  6 2011 04:56:1:cool:
Command line:
WSE path: C:\Program Files\Mount&Blade Warband\
Game executable origin: path
Game executable path: C:\Program Files\Mount&Blade Warband\mb_warband.exe
Game executable checksum: C3FEE1D1
Library path: C:\Program Files\Mount&Blade Warband\WSELib.dll
Injecting
kernel32.lib local address: 7ED40000
LoadLibraryA local address: 7ED7D330
Library path: C:\Program Files\Mount&Blade Warband\WSELib.dll
Library path length: 94
Library path remote address: 2D0000
Remote thread handle: 48
wine: Unhandled page fault on read access to 0x0cec8418 at address 0x7ef8c736 (thread 0021), starting debugger...
Unhandled exception: page fault on read access to 0x0cec8418 in 32-bit code (0x7ef8c736).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7ef8c736 ESP:049ce98c EBP:049ce9c4 EFLAGS:00010202(  R- --  I  - - - )
EAX:0cec83c4 EBX:7efe3ff4 ECX:38783d9d EDX:ffffffff
ESI:0cec83c4 EDI:0cec83c4
Stack dump:
0x049ce98c:  00000000 00000000 00000000 00000000
0x049ce99c:  7efe3ff4 001121b0 00000002 049ce9c8
0x049ce9ac:  7ef90fb5 7de60000 00000002 7efe3ff4
0x049ce9bc:  7ffd4f10 7ed7d330 049cea64 7ef8efef
0x049ce9cc:  7ef93ff3 7de95bb0 7de60000 00000002
0x049ce9dc:  00000000 049ce9e8 00000000 7efb71fb
Backtrace:
=>0 0x7ef8c736 HEAP_GetPtr+0x26(heap=0xcec83c4) [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/heap.c:437] in ntdll (0x049ce9c4)
  1 0x7ef8efef RtlAllocateHeap+0x1e(heap=0xcec83c4, flags=0, size=0x7ffd4f10) [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/heap.c:1646] in ntdll (0x049cea64)
  2 0x7ed7d346 WriteConsoleOutputCharacterA+0xa5(hConsoleOutput=0x7ed7d330, str="C", length=0, coord={X=0x4f10, Y=0x7ffd}, lpNumCharsWritten=0xffffffff) [/home/games/wine_git/build/dlls/kernel32/../../../dlls/kernel32/console.c:660] in kernel32 (0x049cea7:cool:
  3 0x7efb7f8e call_thread_entry_point+0x6d(entry=0x7ed7d330, arg=0x2d0000) [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/signal_i386.c:2499] in ntdll (0x049ceb4:cool:
  4 0x7efc1ab9 start_thread+0xe8(info=0x7ffd4fb:cool: [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/thread.c:404] in ntdll (0x049cf39:cool:
  5 0xf756cdd2 in libpthread.so.0 (+0x5dd1) (0x049cf49:cool:
  6 0xf74dbbde __clone+0x5d() in libc.so.6 (0x00000000)
0x7ef8c736 HEAP_GetPtr+0x26 [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/heap.c:437] in ntdll: cmpl      $0x50414548,0x54(%eax)
437        if (!heapPtr || (heapPtr->magic != HEAP_MAGIC))
 
I got some issues with the new "try_for_active_players" operation. I set it to skip server (1) and while playing alone with bots on "host a game" a got "invalid player no: 250" error. Also, when I set it on 0, it fired containing operations twice for player that was hosting the game. So I guess this operation sees player-server as active players 0 and 250.
 
Vornne said:
SaddamAZR said:
Is it able to run WSE on Linux server via Wine?
It has unfortunately never worked for me (gentoo amd64), but I think cmpxchg8b said it worked for him in a VM running ubuntu, or something. Just try it and report what happens, since it may work.
WSE Loader by cmpxchg8b (Build date: Aug  6 2011 04:56:1:cool:
Command line:
WSE path: C:\Program Files\Mount&Blade Warband\
Game executable origin: path
Game executable path: C:\Program Files\Mount&Blade Warband\mb_warband.exe
Game executable checksum: C3FEE1D1
Library path: C:\Program Files\Mount&Blade Warband\WSELib.dll
Injecting
kernel32.lib local address: 7ED40000
LoadLibraryA local address: 7ED7D330
Library path: C:\Program Files\Mount&Blade Warband\WSELib.dll
Library path length: 94
Library path remote address: 2D0000
Remote thread handle: 48
wine: Unhandled page fault on read access to 0x0cec8418 at address 0x7ef8c736 (thread 0021), starting debugger...
Unhandled exception: page fault on read access to 0x0cec8418 in 32-bit code (0x7ef8c736).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7ef8c736 ESP:049ce98c EBP:049ce9c4 EFLAGS:00010202(  R- --  I  - - - )
EAX:0cec83c4 EBX:7efe3ff4 ECX:38783d9d EDX:ffffffff
ESI:0cec83c4 EDI:0cec83c4
Stack dump:
0x049ce98c:  00000000 00000000 00000000 00000000
0x049ce99c:  7efe3ff4 001121b0 00000002 049ce9c8
0x049ce9ac:  7ef90fb5 7de60000 00000002 7efe3ff4
0x049ce9bc:  7ffd4f10 7ed7d330 049cea64 7ef8efef
0x049ce9cc:  7ef93ff3 7de95bb0 7de60000 00000002
0x049ce9dc:  00000000 049ce9e8 00000000 7efb71fb
Backtrace:
=>0 0x7ef8c736 HEAP_GetPtr+0x26(heap=0xcec83c4) [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/heap.c:437] in ntdll (0x049ce9c4)
  1 0x7ef8efef RtlAllocateHeap+0x1e(heap=0xcec83c4, flags=0, size=0x7ffd4f10) [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/heap.c:1646] in ntdll (0x049cea64)
  2 0x7ed7d346 WriteConsoleOutputCharacterA+0xa5(hConsoleOutput=0x7ed7d330, str="C", length=0, coord={X=0x4f10, Y=0x7ffd}, lpNumCharsWritten=0xffffffff) [/home/games/wine_git/build/dlls/kernel32/../../../dlls/kernel32/console.c:660] in kernel32 (0x049cea7:cool:
  3 0x7efb7f8e call_thread_entry_point+0x6d(entry=0x7ed7d330, arg=0x2d0000) [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/signal_i386.c:2499] in ntdll (0x049ceb4:cool:
  4 0x7efc1ab9 start_thread+0xe8(info=0x7ffd4fb:cool: [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/thread.c:404] in ntdll (0x049cf39:cool:
  5 0xf756cdd2 in libpthread.so.0 (+0x5dd1) (0x049cf49:cool:
  6 0xf74dbbde __clone+0x5d() in libc.so.6 (0x00000000)
0x7ef8c736 HEAP_GetPtr+0x26 [/home/games/wine_git/build/dlls/ntdll/../../../dlls/ntdll/heap.c:437] in ntdll: cmpl      $0x50414548,0x54(%eax)
437        if (!heapPtr || (heapPtr->magic != HEAP_MAGIC))

Then there are problems with the memory injection in the wrong virtual offsets. I suppose is related with the different image size of the libs
that wine has.  :???:

Our compiled friend should do a search and replace technique instead of literal code location where placing the redirectors to the custom
crafted functions in the forcefully hooked dll. A mess.

I would like to take an eye to the code. I've seen the MS Detours
example and looks interesting. Although I understand only the theory behind the magic.

That's how bots and cheats are attached. Also some other heavy modding like MultiGTA SA. Or Gothic II online... Pretty cool.

Can you make a Github repo or something?


PS: I've been also reading about code caves. Was the lib strictly necessary? Or you simply wanted to code it on a more legible language than asm. Or maybe the complexity and better maintenance of the app requires that. I'll stop now, I'm only rambling. Sorry.  :wink:
 
Hello cmp, I love your work but do you still have copies of your original 'examples'? as it was much asier to learn how to use WSE back when they were on the original thread :/.

Wolf.
 
Slawomir of Aaarrghh said:
I got some issues with the new "try_for_active_players" operation. I set it to skip server (1) and while playing alone with bots on "host a game" a got "invalid player no: 250" error. Also, when I set it on 0, it fired containing operations twice for player that was hosting the game. So I guess this operation sees player-server as active players 0 and 250.
Will check it and release a hotfix tomorrow.
wolfstar97 said:
Hello cmp, I love your work but do you still have copies of your original 'examples'? as it was much asier to learn how to use WSE back when they were on the original thread :/.

Wolf.
I have no idea why those are gone; I must have accidentally removed them while I was cleaning the post. Unfortunately I don't have them saved...
Vornne said:
SaddamAZR said:
Is it able to run WSE on Linux server via Wine?
It has unfortunately never worked for me (gentoo amd64), but I think cmpxchg8b said it worked for him in a VM running ubuntu, or something. Just try it and report what happens, since it may work.
It definitely works on Ubuntu (both an x86 VM and an x64 physical server). Could be a bug that was fixed in a later Wine version, yours is pretty old.
Swyter said:
Then there are problems with the memory injection in the wrong virtual offsets. I suppose is related with the different image size of the libs
that wine has.  :???:

Our compiled friend should do a search and replace technique instead of literal code location where placing the redirectors to the custom
crafted functions in the forcefully hooked dll. A mess.

I would like to take an eye to the code. I've seen the MS Detours
example and looks interesting. Although I understand only the theory behind the magic.
Not really, no. The only fixed offsets I use are in the Warband executable, and obviously those won't change, so there is no need for search and replace. The one Vorrne posted looks like a loader error.
Swyter said:
Can you make a Github repo or something?
I have a Bitbucket repo, but it's not accessible to the public, and it probably never will.
Swyter said:
PS: I've been also reading about code caves. Was the lib strictly necessary? Or you simply wanted to code it on a more legible language than asm. Or maybe the complexity and better maintenance of the app requires that. I'll stop now, I'm only rambling. Sorry.  :wink:
I might be a masochist who likes coding in C and C++, but I'm not masochist enough to write something this size in assembly (WSE is ~500 lines of assembly and ~10000 lines of C++). I'm not even sure it could fit into cave space in the executable.
The only advantage of using code caves in the executable I can think of is harder detection, but only Steam servers use an anti-cheat mechanism and nobody uses Steam servers (fun fact: VAC cannot detect the auto-blocker cheat, so it's completely and utterly useless in Warband's case).
 
cmpxchg8b said:
wolfstar97 said:
Hello cmp, I love your work but do you still have copies of your original 'examples'? as it was much asier to learn how to use WSE back when they were on the original thread :/.

Wolf.
I have no idea why those are gone; I must have accidentally removed them while I was cleaning the post. Unfortunately I don't have them saved...

So does any other person who might luckily still have a copy of these (if they do then they are my saviour) come forward?

Wolf.
 
Well, they weren't that useful... they featured only a few operations and scripts.
I started writing official documentation, but it's not exactly high priority and it will take me a bit of time.
 
Wse says: You are running unsupported version of MB:W , the wse only supports version 1.143... I am using version 1.143 so where is problem ?
 
Status
Not open for further replies.
Back
Top Bottom