Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Lf2 2.0a load dll
#21
Does anybody can help?
Reply
Thanks given by:
#22
Come on surik, it has been about 2 months now. If U couldn't do it maybe U should tell us, so we can find ourselves a solution.
[Image: signature.png]
A-Engine: A new beat em up game engine inspired by LF2. Coming soon

A-Engine Dev Blog - Update #8: Timeout

Reply
Thanks given by:
#23
I think that Surik, can't help us :/
does anybody else?
Reply
Thanks given by:
#24
I do not have this problem.
How can I fix it if I can not even see it?
Reply
Thanks given by:
#25
Hmm... can you upload your LF, with Dll's? maybe i do something wrong...
Reply
Thanks given by:
#26
Exe is fine. It's the dll that you are using.
[Image: doty7Xn.gif]

10 ʏᴇᴀʀs sɪɴᴄᴇ ɪʀᴄ ɢᴏᴏᴅ.ɪ ᴡᴀʟᴋ ᴛʜʀᴏᴜɢʜ ᴛʜᴇ ᴇᴍᴘᴛʏ sᴛʀᴇᴇᴛs ᴛʀʏɪɴɢ ᴛᴏ ᴛʜɪɴᴋ ᴏғ sᴏᴍᴇᴛʜɪɴɢ ᴇʟsᴇ ʙᴜᴛ ᴍʏ ᴘᴀᴛʜ ᴀʟᴡᴀʏs ʟᴇᴀᴅs ᴛᴏ ᴛʜᴇ ɪʀᴄ. ɪ sᴛᴀʀᴇ ᴀᴛ ᴛʜᴇ sᴄʀᴇᴇɴ ғᴏʀ ʜᴏᴜʀs ᴀɴᴅ ᴛʀʏ ᴛᴏ sᴜᴍᴍᴏɴ ᴛʜᴇ ɢᴏᴏᴅ ɪʀᴄ. ɪ ᴡᴀᴛᴄʜ ᴏᴛʜᴇʀ ɪʀᴄ ᴄʜᴀɴɴᴇʟs ʙᴜᴛ ɪᴛ ɪs ɴᴏ ɢᴏᴏᴅ. ɪ ᴘᴇsᴛᴇʀ ᴢᴏʀᴛ ᴀɴᴅ ᴛʀʏ ᴛᴏ ʀᴇsɪsᴛ ʜɪs sᴇxɪɴᴇss ʙᴜᴛ ɪᴛ ɪs ᴀʟʟ ᴍᴇᴀɴɪɴɢʟᴇss. ᴛʜᴇ ᴇɴᴅ ɪs ɴᴇᴀʀ.ɪ ᴛʜᴇɴ ᴜsᴜᴀʟʟʏ ʀᴇᴀᴅ sᴏᴍᴇ ᴏʟᴅ ɪʀᴄ ʟᴏɢs ᴀɴᴅ ᴄʀʏ ᴍʏsᴇʟғ ᴛᴏ sʟᴇᴇᴘ.


Reply
Thanks given by:
#27
But maybe he's using other exe, or something like that...
I think the best to check everything.
Reply
Thanks given by:
#28
I looked at the exe, it's fine. It doesn't touch the transforming part of the exe.

It's probably timestop. Remove it from the dll and recompile.
[Image: doty7Xn.gif]

10 ʏᴇᴀʀs sɪɴᴄᴇ ɪʀᴄ ɢᴏᴏᴅ.ɪ ᴡᴀʟᴋ ᴛʜʀᴏᴜɢʜ ᴛʜᴇ ᴇᴍᴘᴛʏ sᴛʀᴇᴇᴛs ᴛʀʏɪɴɢ ᴛᴏ ᴛʜɪɴᴋ ᴏғ sᴏᴍᴇᴛʜɪɴɢ ᴇʟsᴇ ʙᴜᴛ ᴍʏ ᴘᴀᴛʜ ᴀʟᴡᴀʏs ʟᴇᴀᴅs ᴛᴏ ᴛʜᴇ ɪʀᴄ. ɪ sᴛᴀʀᴇ ᴀᴛ ᴛʜᴇ sᴄʀᴇᴇɴ ғᴏʀ ʜᴏᴜʀs ᴀɴᴅ ᴛʀʏ ᴛᴏ sᴜᴍᴍᴏɴ ᴛʜᴇ ɢᴏᴏᴅ ɪʀᴄ. ɪ ᴡᴀᴛᴄʜ ᴏᴛʜᴇʀ ɪʀᴄ ᴄʜᴀɴɴᴇʟs ʙᴜᴛ ɪᴛ ɪs ɴᴏ ɢᴏᴏᴅ. ɪ ᴘᴇsᴛᴇʀ ᴢᴏʀᴛ ᴀɴᴅ ᴛʀʏ ᴛᴏ ʀᴇsɪsᴛ ʜɪs sᴇxɪɴᴇss ʙᴜᴛ ɪᴛ ɪs ᴀʟʟ ᴍᴇᴀɴɪɴɢʟᴇss. ᴛʜᴇ ᴇɴᴅ ɪs ɴᴇᴀʀ.ɪ ᴛʜᴇɴ ᴜsᴜᴀʟʟʏ ʀᴇᴀᴅ sᴏᴍᴇ ᴏʟᴅ ɪʀᴄ ʟᴏɢs ᴀɴᴅ ᴄʀʏ ᴍʏsᴇʟғ ᴛᴏ sʟᴇᴇᴘ.


Reply
Thanks given by:
#29
Thx, but i can't remove this, i'm green in things like that.
Reply
Thanks given by:
#30
I'm assuming you have already downloaded the stuff needed for creating the DLL. If not, please check back >here<

In the rarara-folder (I'm just sticking to the original names for the sake of understandability (is that even a word? :p)), you'll see a file called "rarara.Asm". This is pretty much the file that starts all the magic. So, let's have a look into it:

    ASM-Code:
; Based on Masm32 Dll Plugin Example for Damnation by Drakken
; Modified for LF2 by Silva
; Contributions by: genevrier
 
.386
.Model Flat, StdCall
OPTION CASEMAP :NONE
 
include \masm32\include\windows.inc
include \masm32\include\masm32.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
include \masm32\include\debug.inc
includelib \masm32\lib\masm32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\debug.lib
 
include rarara.inc
include generic.inc
include AI.inc
include armor.inc
include states.inc
include text.inc
include itreff.inc
include itrkind.inc
include perspective.inc
include timestop.inc
 
.data
memAlloc dd ?
 
.code
DllEntryPoint proc hInstDLL:DWORD, reason:DWORD, unused:DWORD
 
	mov eax,reason
	.if eax == DLL_PROCESS_ATTACH											; Called when our dll loaded
		invoke VirtualAlloc, NULL, 4000, MEM_COMMIT,PAGE_READWRITE
        mov memAlloc,eax
		call DLLStartup														; Memory patches and jmp patches
	.endif
	ret
 
DllEntryPoint endp
 
DLLStartup proc
 
	;===============Random stuff(generic.inc)===========
	invoke CallPatch, 0041FA09h, addr Health
	invoke JmpPatch, 0041FB09h, addr MP
	invoke JmpPatch, 00420223h, addr Max_HP
	invoke JmpPatch, 0041A71Dh, addr Hide_shadow
	invoke JmpPatch,004202B2h, addr opoint_kind
	;===================================================
 
	;=============itr kind(itrkind.inc)=================
	invoke JmpPatch, 00430CECh, addr itr_kind8
	invoke JmpPatch, 004176CCh, addr itr_kind8_2
	;===================================================
 
	;=============itr effects(itreff.inc)===============
	invoke JmpPatch, 0042EB73h, addr itr_effect_fall
	invoke JmpPatch, 0042FD11h, addr itr_effect
	;===================================================
 
	;=================states(states.inc)================
	invoke JmpPatch, 0041F63Ch, addr State8xxx
	invoke JmpPatch, 004140FBh, addr State_Turning
	invoke JmpPatch, 004177D9h, addr Hit_teammates
	;==================================================
 
	;===================Loading Text(text.inc)============
	invoke JmpPatch, 004243D2h, addr Loading
	;=====================================================
 
	;====================Armor(armor.inc)====================
	invoke JmpPatch,0042E6DFh, addr Armor_Knight 	;knight armor
	invoke JmpPatch,0042E74Ch, addr Armor_Louis		;louis armor
	invoke JmpPatch,0042E82Eh, addr Armor_Julian	;julian armor
	;=======================================================
 
	;============Perspective Tag(perspective.inc)===========
	invoke JmpPatch, 00421517h, addr perspective
	invoke JmpPatch, 0042D62Eh, addr perspective2
	invoke JmpPatch, 0042D36Bh, addr perspective3
	invoke JmpPatch, 0042D4D3h, addr perspective4
	;=====================================================
 
	;==============Time Stop(timestop.inc)================
    invoke JmpPatch, 00406800h, addr loop2
    invoke JmpPatch,0041FB3Dh, addr frame_update
    invoke JmpPatch,0041E68Bh, addr movement
    invoke JmpPatch,0041E395h,addr frame_shit
    invoke CallPatch,0041D4AAh, addr time_loop
    invoke WriteMem,0041D4AFh, addr oneNOP,1
    invoke JmpPatch,0042F32Ch,addr shaking
    invoke JmpPatch,004064B0h,addr create_object
    invoke JmpPatch,0041FCB9h,addr timestop_opoint
    ;=====================================================
 
	call AI
	ret
 
DLLStartup endp
 
AI proc
 
	;=================Range Stuf==================
	invoke JmpPatch, 0040AE1Ah, addr Range1
	invoke JmpPatch, 0040B227h, addr Range2
	invoke JmpPatch, 0040B2DBh, addr Range3
	invoke JmpPatch, 0040B393h, addr Range4
	invoke JmpPatch, 00403878h, addr Deep_Ball
	;=============================================
 
	;Generic D>A
	invoke JmpPatch, 00403608h, addr AI_Ball1
	;Generic D>A #2
	invoke JmpPatch, 004036FBh, addr AI_Ball2
	;deep ai
	invoke JmpPatch, 00403E89h, addr AI_Deep
	;john ai
	invoke JmpPatch, 00403A7Eh, addr AI_John
	;henry ai
	invoke JmpPatch, 004041F1h, addr AI_Henry
	;rudolf ai
	invoke JmpPatch, 0040436Eh, addr AI_Rudolf
	;louis ai
	invoke JmpPatch, 004044FAh, addr AI_Louis
	;firen ai
	invoke JmpPatch, 00404609h, addr AI_Firen
	;freeze ai
	invoke JmpPatch, 0040499Ah, addr AI_Freeze
	;dennis ai
	invoke JmpPatch, 00405150h, addr AI_Dennis
	;woody ai
	invoke JmpPatch, 00404DBBh, addr AI_Woody
	;davis ai
	invoke JmpPatch, 00404C12h, addr AI_Davis
	;sorcerer ai
	invoke JmpPatch, 00405566h, addr AI_Sorcerer
 
	ret
AI endp
 
End DllEntryPoint
Feel free to learn what does what; with a bit dedication, you get behind it pretty easily. What you need to know: semicolons ";" make the rest of the line a comment which is not going to be read by the assembler (the thing that creates the DLL for you). The "invoke"-command will load the routines that are stored inside the various .inc-files you see at the top which have been "include"d (these procedures actually override the exe-settings, so they are the ones you are looking for). You can basically include more than you actually use; it's just not good coding practice.

What you need to do is to comment out anything that is timestop-related. So, un-including timestop.inc is not necessary but it won't hurt. What you definitely need to do is commenting the timestop-related "invoke"s. As I said, these are the ones to be disabled, so go slap some ";" at the front of the respective lines.

Hope that helps a bit ;)

Yes, I could've simply done it myself and thus saved about 5minutes writing up this post but I actually wanted him to understand what is going on.
Silverthorn / Blue Phoenix
~ Breaking LFE since 2008 ~

"Freeze, you're under vrest!" - Mark, probably.

» Gallery | » Sprites | » DeviantArt
Reply
Thanks given by: Sparco , A-Man




Users browsing this thread: 1 Guest(s)