:)Quote:
Bin gespannt wie genau du dir das vorstellst. Soll heißen ich bin dabei ;)
Also, ich schreib hier einfach mal, wie ich mir das so vorstellen würde, muss natürlich nicht alles 1-1 so umgesetzt werden. Mein Modul würde in Form einer DLL vorliegen, die einige Funktionen exportiert. Dein Hack würde sie dann via LoadLibrary laden.
Hier einfach mal eine Liste der Funktionen, wie ich sie exportieren würde, ein paar Zeilen Code sagen bekanntlich mehr als Worte.
Code:
#define DLL_EXPORT __declspec(dllexport) __stdcall
// Initialisierungs-Funktion, wird nach dem Laden des Module called
bool DLL_EXPORT Initialize (char *szModuleVer, // Schreibt das Modul seine Versions-Nr als Sting rein
int nModuleVerLen, // Maximale Länge für szModuleVer
DWORD *pdwModuleBuild, // Schreibt das Module seine Build-Ver rein
char *szHackVer, // Wird vom Hack die Version als String übergeben
DWORD dwHackBuild) ; // Selbsterklärend ^^
// SendChatMessage Callback Function, wird jedes mal called, wenn eine Chatmessage
// gesendet wird
// Returnvalue: true, wenn der Command verarbeitet wurde; false, wenn der Command
// nicht vom Modul verarbeitet wurde
bool DLL_EXPORT SCMCallback (const char *szMessage) ;
// EndScene Callback, wird vom Hack jeden Frame aufgerufen. Ob es nun wirklich ES oder
// RenderWorld ist, wird mein FW wohl kaum stören, hauptsache der DP stimmt :p
HRESULT DLL_EXPORT RenderCallback (IDirect3DDevice9 *pDevice) ;
// DX-Reset Callback
HRESULT DLL_EXPORT ResetCallback (IDirect3DDevice9 *pDevice,
D3DPRESENT_PARAMETERS* pParams) ;
// Returnt Name des Modules
char *DLL_EXPORT GetModuleName () ;
/edit:
Hey, du willst verrückt sein? Sei froh, dass du mich noch nie im RL getroffen hast :awesome: Und ich weiß auch nicht, warum wir Devs grunsätzlich als RL-lose Hardcore-Nerds angesehen werden, das ist einfach unser Hobby; wo andere Fußball spielen gehen oder ihre Briefmarken-Sammlung ordnen, schreiben wir halt Programme :pQuote:
Zu den bisherigen Features sei noch gesagt das sie zum großen Teil aus Copy & Paste aus meinen anderen Projekten bestehen. Die Lvl2'er kennen den Source, ich glaube die paar 100 Zeilen sehen wirklich nicht nach no RL und langer Arbeit aus, neu hinzugekommen sind wirklich nur kleinere Features und Bugfixes. Die Winamp Funktionen verschlingen vielleicht nochmal 100 Zeilen und sind sehr einfach aufgebaut (FindWindow/SendMessage).
Ich hoffe ich kann also in Ruhe weiter releasen, macht euch keine Sorgen - mir geht es gut. Auch wenn ich manchmal ein wenig Bullshit brabbel und verrückt bin :p